summaryrefslogtreecommitdiff
path: root/Modules
diff options
context:
space:
mode:
authorKitware Robot <kwrobot@kitware.com>2013-10-15 11:17:36 -0400
committerBrad King <brad.king@kitware.com>2013-10-15 14:12:03 -0400
commitf051814ed0e63badbfd68049354f36259dbf4b49 (patch)
treef4e6f885f86c882d723a7dd53d2b702d0c7fdffb /Modules
parente94958e99c4dec26c86ce8b76d744c04ba960675 (diff)
downloadcmake-f051814ed0e63badbfd68049354f36259dbf4b49.tar.gz
Convert builtin help to reStructuredText source files
Run the convert-help.bash script to convert documentation: ./convert-help.bash "/path/to/CMake-build/bin" Then remove it.
Diffstat (limited to 'Modules')
-rw-r--r--Modules/AddFileDependencies.cmake8
-rw-r--r--Modules/BundleUtilities.cmake275
-rw-r--r--Modules/CMakeAddFortranSubdirectory.cmake60
-rw-r--r--Modules/CMakeBackwardCompatibilityCXX.cmake21
-rw-r--r--Modules/CMakeDependentOption.cmake30
-rw-r--r--Modules/CMakeDetermineVSServicePack.cmake40
-rw-r--r--Modules/CMakeExpandImportedTargets.cmake39
-rw-r--r--Modules/CMakeFindFrameworks.cmake6
-rw-r--r--Modules/CMakeFindPackageMode.cmake27
-rw-r--r--Modules/CMakeForceCompiler.cmake47
-rw-r--r--Modules/CMakeGraphVizOptions.cmake177
-rw-r--r--Modules/CMakePackageConfigHelpers.cmake282
-rw-r--r--Modules/CMakeParseArguments.cmake100
-rw-r--r--Modules/CMakePrintHelpers.cmake55
-rw-r--r--Modules/CMakePrintSystemInformation.cmake12
-rw-r--r--Modules/CMakePushCheckState.cmake55
-rw-r--r--Modules/CMakeVerifyManifest.cmake23
-rw-r--r--Modules/CPack.cmake587
-rw-r--r--Modules/CPackBundle.cmake80
-rw-r--r--Modules/CPackComponent.cmake550
-rw-r--r--Modules/CPackCygwin.cmake52
-rw-r--r--Modules/CPackDMG.cmake144
-rw-r--r--Modules/CPackDeb.cmake373
-rw-r--r--Modules/CPackNSIS.cmake343
-rw-r--r--Modules/CPackPackageMaker.cmake50
-rw-r--r--Modules/CPackRPM.cmake575
-rw-r--r--Modules/CPackWIX.cmake155
-rw-r--r--Modules/CTest.cmake89
-rw-r--r--Modules/CTestScriptMode.cmake6
-rw-r--r--Modules/CTestUseLaunchers.cmake32
-rw-r--r--Modules/CheckCCompilerFlag.cmake28
-rw-r--r--Modules/CheckCSourceCompiles.cmake31
-rw-r--r--Modules/CheckCSourceRuns.cmake31
-rw-r--r--Modules/CheckCXXCompilerFlag.cmake28
-rw-r--r--Modules/CheckCXXSourceCompiles.cmake31
-rw-r--r--Modules/CheckCXXSourceRuns.cmake31
-rw-r--r--Modules/CheckCXXSymbolExists.cmake42
-rw-r--r--Modules/CheckFortranFunctionExists.cmake25
-rw-r--r--Modules/CheckFunctionExists.cmake25
-rw-r--r--Modules/CheckIncludeFile.cmake32
-rw-r--r--Modules/CheckIncludeFileCXX.cmake36
-rw-r--r--Modules/CheckIncludeFiles.cmake28
-rw-r--r--Modules/CheckLanguage.cmake31
-rw-r--r--Modules/CheckLibraryExists.cmake31
-rw-r--r--Modules/CheckPrototypeDefinition.cmake49
-rw-r--r--Modules/CheckStructHasMember.cmake47
-rw-r--r--Modules/CheckSymbolExists.cmake39
-rw-r--r--Modules/CheckTypeSize.cmake83
-rw-r--r--Modules/CheckVariableExists.cmake33
-rw-r--r--Modules/Dart.cmake24
-rw-r--r--Modules/DeployQt4.cmake111
-rw-r--r--Modules/Documentation.cmake11
-rw-r--r--Modules/ExternalData.cmake280
-rw-r--r--Modules/ExternalProject.cmake299
-rw-r--r--Modules/FeatureSummary.cmake363
-rw-r--r--Modules/FindALSA.cmake26
-rw-r--r--Modules/FindASPELL.cmake19
-rw-r--r--Modules/FindAVIFile.cmake25
-rw-r--r--Modules/FindArmadillo.cmake38
-rw-r--r--Modules/FindBISON.cmake80
-rw-r--r--Modules/FindBLAS.cmake60
-rw-r--r--Modules/FindBZip2.cmake19
-rw-r--r--Modules/FindBoost.cmake270
-rw-r--r--Modules/FindBullet.cmake37
-rw-r--r--Modules/FindCABLE.cmake24
-rw-r--r--Modules/FindCUDA.cmake730
-rw-r--r--Modules/FindCURL.cmake17
-rw-r--r--Modules/FindCVS.cmake25
-rw-r--r--Modules/FindCoin3D.cmake19
-rw-r--r--Modules/FindCups.cmake21
-rw-r--r--Modules/FindCurses.cmake32
-rw-r--r--Modules/FindCxxTest.cmake196
-rw-r--r--Modules/FindCygwin.cmake5
-rw-r--r--Modules/FindDCMTK.cmake5
-rw-r--r--Modules/FindDart.cmake10
-rw-r--r--Modules/FindDevIL.cmake41
-rw-r--r--Modules/FindDoxygen.cmake31
-rw-r--r--Modules/FindEXPAT.cmake15
-rw-r--r--Modules/FindFLEX.cmake109
-rw-r--r--Modules/FindFLTK.cmake65
-rw-r--r--Modules/FindFLTK2.cmake30
-rw-r--r--Modules/FindFreetype.cmake31
-rw-r--r--Modules/FindGCCXML.cmake13
-rw-r--r--Modules/FindGDAL.cmake20
-rw-r--r--Modules/FindGIF.cmake21
-rw-r--r--Modules/FindGLEW.cmake16
-rw-r--r--Modules/FindGLUT.cmake25
-rw-r--r--Modules/FindGTK.cmake17
-rw-r--r--Modules/FindGTK2.cmake112
-rw-r--r--Modules/FindGTest.cmake110
-rw-r--r--Modules/FindGettext.cmake69
-rw-r--r--Modules/FindGit.cmake27
-rw-r--r--Modules/FindGnuTLS.cmake18
-rw-r--r--Modules/FindGnuplot.cmake18
-rw-r--r--Modules/FindHDF5.cmake89
-rw-r--r--Modules/FindHSPELL.cmake27
-rw-r--r--Modules/FindHTMLHelp.cmake15
-rw-r--r--Modules/FindHg.cmake27
-rw-r--r--Modules/FindITK.cmake6
-rw-r--r--Modules/FindIcotool.cmake19
-rw-r--r--Modules/FindImageMagick.cmake104
-rw-r--r--Modules/FindJNI.cmake28
-rw-r--r--Modules/FindJPEG.cmake25
-rw-r--r--Modules/FindJasper.cmake17
-rw-r--r--Modules/FindJava.cmake71
-rw-r--r--Modules/FindKDE3.cmake152
-rw-r--r--Modules/FindKDE4.cmake27
-rw-r--r--Modules/FindLAPACK.cmake52
-rw-r--r--Modules/FindLATEX.cmake24
-rw-r--r--Modules/FindLibArchive.cmake17
-rw-r--r--Modules/FindLibLZMA.cmake29
-rw-r--r--Modules/FindLibXml2.cmake21
-rw-r--r--Modules/FindLibXslt.cmake30
-rw-r--r--Modules/FindLua.cmake44
-rw-r--r--Modules/FindLua50.cmake36
-rw-r--r--Modules/FindLua51.cmake38
-rw-r--r--Modules/FindMFC.cmake17
-rw-r--r--Modules/FindMPEG.cmake24
-rw-r--r--Modules/FindMPEG2.cmake24
-rw-r--r--Modules/FindMPI.cmake118
-rw-r--r--Modules/FindMatlab.cmake20
-rw-r--r--Modules/FindMotif.cmake16
-rw-r--r--Modules/FindOpenAL.cmake22
-rw-r--r--Modules/FindOpenGL.cmake36
-rw-r--r--Modules/FindOpenMP.cmake25
-rw-r--r--Modules/FindOpenSSL.cmake24
-rw-r--r--Modules/FindOpenSceneGraph.cmake109
-rw-r--r--Modules/FindOpenThreads.cmake30
-rw-r--r--Modules/FindPHP4.cmake18
-rw-r--r--Modules/FindPNG.cmake35
-rw-r--r--Modules/FindPackageHandleStandardArgs.cmake160
-rw-r--r--Modules/FindPackageMessage.cmake36
-rw-r--r--Modules/FindPerl.cmake15
-rw-r--r--Modules/FindPerlLibs.cmake50
-rw-r--r--Modules/FindPhysFS.cmake19
-rw-r--r--Modules/FindPike.cmake18
-rw-r--r--Modules/FindPkgConfig.cmake158
-rw-r--r--Modules/FindPostgreSQL.cmake20
-rw-r--r--Modules/FindProducer.cmake41
-rw-r--r--Modules/FindProtobuf.cmake139
-rw-r--r--Modules/FindPythonInterp.cmake38
-rw-r--r--Modules/FindPythonLibs.cmake45
-rw-r--r--Modules/FindQt.cmake40
-rw-r--r--Modules/FindQt3.cmake40
-rw-r--r--Modules/FindQt4.cmake840
-rw-r--r--Modules/FindQuickTime.cmake14
-rw-r--r--Modules/FindRTI.cmake37
-rw-r--r--Modules/FindRuby.cmake35
-rw-r--r--Modules/FindSDL.cmake89
-rw-r--r--Modules/FindSDL_image.cmake38
-rw-r--r--Modules/FindSDL_mixer.cmake38
-rw-r--r--Modules/FindSDL_net.cmake38
-rw-r--r--Modules/FindSDL_sound.cmake111
-rw-r--r--Modules/FindSDL_ttf.cmake38
-rw-r--r--Modules/FindSWIG.cmake29
-rw-r--r--Modules/FindSelfPackers.cmake17
-rw-r--r--Modules/FindSquish.cmake135
-rw-r--r--Modules/FindSubversion.cmake77
-rw-r--r--Modules/FindTCL.cmake72
-rw-r--r--Modules/FindTIFF.cmake25
-rw-r--r--Modules/FindTclStub.cmake60
-rw-r--r--Modules/FindTclsh.cmake25
-rw-r--r--Modules/FindThreads.cmake26
-rw-r--r--Modules/FindUnixCommands.cmake8
-rw-r--r--Modules/FindVTK.cmake67
-rw-r--r--Modules/FindWget.cmake17
-rw-r--r--Modules/FindWish.cmake19
-rw-r--r--Modules/FindX11.cmake93
-rw-r--r--Modules/FindXMLRPC.cmake34
-rw-r--r--Modules/FindZLIB.cmake48
-rw-r--r--Modules/Findosg.cmake60
-rw-r--r--Modules/FindosgAnimation.cmake52
-rw-r--r--Modules/FindosgDB.cmake52
-rw-r--r--Modules/FindosgFX.cmake52
-rw-r--r--Modules/FindosgGA.cmake52
-rw-r--r--Modules/FindosgIntrospection.cmake39
-rw-r--r--Modules/FindosgManipulator.cmake39
-rw-r--r--Modules/FindosgParticle.cmake44
-rw-r--r--Modules/FindosgPresentation.cmake43
-rw-r--r--Modules/FindosgProducer.cmake44
-rw-r--r--Modules/FindosgQt.cmake57
-rw-r--r--Modules/FindosgShadow.cmake52
-rw-r--r--Modules/FindosgSim.cmake52
-rw-r--r--Modules/FindosgTerrain.cmake52
-rw-r--r--Modules/FindosgText.cmake52
-rw-r--r--Modules/FindosgUtil.cmake52
-rw-r--r--Modules/FindosgViewer.cmake52
-rw-r--r--Modules/FindosgVolume.cmake52
-rw-r--r--Modules/FindosgWidget.cmake57
-rw-r--r--Modules/Findosg_functions.cmake8
-rw-r--r--Modules/FindwxWidgets.cmake143
-rw-r--r--Modules/FindwxWindows.cmake104
-rw-r--r--Modules/FortranCInterface.cmake162
-rw-r--r--Modules/GNUInstallDirs.cmake69
-rw-r--r--Modules/GenerateExportHeader.cmake248
-rw-r--r--Modules/GetPrerequisites.cmake205
-rw-r--r--Modules/InstallRequiredSystemLibraries.cmake49
-rw-r--r--Modules/MacroAddFileDependencies.cmake18
-rw-r--r--Modules/ProcessorCount.cmake49
-rw-r--r--Modules/Qt4ConfigDependentSettings.cmake6
-rw-r--r--Modules/Qt4Macros.cmake6
-rw-r--r--Modules/SelectLibraryConfigurations.cmake36
-rw-r--r--Modules/SquishTestScript.cmake19
-rw-r--r--Modules/TestBigEndian.cmake13
-rw-r--r--Modules/TestCXXAcceptsFlag.cmake16
-rw-r--r--Modules/TestForANSIForScope.cmake14
-rw-r--r--Modules/TestForANSIStreamHeaders.cmake14
-rw-r--r--Modules/TestForSSTREAM.cmake11
-rw-r--r--Modules/TestForSTDNamespace.cmake11
-rw-r--r--Modules/UseEcos.cmake35
-rw-r--r--Modules/UseJava.cmake402
-rw-r--r--Modules/UseJavaClassFilelist.cmake12
-rw-r--r--Modules/UseJavaSymlinks.cmake8
-rw-r--r--Modules/UsePkgConfig.cmake18
-rw-r--r--Modules/UseQt4.cmake13
-rw-r--r--Modules/UseSWIG.cmake45
-rw-r--r--Modules/Use_wxWindows.cmake36
-rw-r--r--Modules/UsewxWidgets.cmake39
-rw-r--r--Modules/WriteBasicConfigVersionFile.cmake12
219 files changed, 9684 insertions, 5865 deletions
diff --git a/Modules/AddFileDependencies.cmake b/Modules/AddFileDependencies.cmake
index e88025c14a..4d01a526c7 100644
--- a/Modules/AddFileDependencies.cmake
+++ b/Modules/AddFileDependencies.cmake
@@ -1,6 +1,10 @@
-# - ADD_FILE_DEPENDENCIES(source_file depend_files...)
-# Adds the given files as dependencies to source_file
+#.rst:
+# AddFileDependencies
+# -------------------
+#
+# ADD_FILE_DEPENDENCIES(source_file depend_files...)
#
+# Adds the given files as dependencies to source_file
#=============================================================================
# Copyright 2006-2009 Kitware, Inc.
diff --git a/Modules/BundleUtilities.cmake b/Modules/BundleUtilities.cmake
index 0f6cd059e9..b896de21bc 100644
--- a/Modules/BundleUtilities.cmake
+++ b/Modules/BundleUtilities.cmake
@@ -1,146 +1,207 @@
-# - Functions to help assemble a standalone bundle application.
+#.rst:
+# BundleUtilities
+# ---------------
+#
+# Functions to help assemble a standalone bundle application.
+#
# A collection of CMake utility functions useful for dealing with .app
# bundles on the Mac and bundle-like directories on any OS.
#
# The following functions are provided by this module:
-# fixup_bundle
-# copy_and_fixup_bundle
-# verify_app
-# get_bundle_main_executable
-# get_dotapp_dir
-# get_bundle_and_executable
-# get_bundle_all_executables
-# get_item_key
-# clear_bundle_keys
-# set_bundle_key_values
-# get_bundle_keys
-# copy_resolved_item_into_bundle
-# copy_resolved_framework_into_bundle
-# fixup_bundle_item
-# verify_bundle_prerequisites
-# verify_bundle_symlinks
+#
+# ::
+#
+# fixup_bundle
+# copy_and_fixup_bundle
+# verify_app
+# get_bundle_main_executable
+# get_dotapp_dir
+# get_bundle_and_executable
+# get_bundle_all_executables
+# get_item_key
+# clear_bundle_keys
+# set_bundle_key_values
+# get_bundle_keys
+# copy_resolved_item_into_bundle
+# copy_resolved_framework_into_bundle
+# fixup_bundle_item
+# verify_bundle_prerequisites
+# verify_bundle_symlinks
+#
# Requires CMake 2.6 or greater because it uses function, break and
-# PARENT_SCOPE. Also depends on GetPrerequisites.cmake.
+# PARENT_SCOPE. Also depends on GetPrerequisites.cmake.
+#
+# ::
+#
+# FIXUP_BUNDLE(<app> <libs> <dirs>)
#
-# FIXUP_BUNDLE(<app> <libs> <dirs>)
# Fix up a bundle in-place and make it standalone, such that it can be
-# drag-n-drop copied to another machine and run on that machine as long as all
-# of the system libraries are compatible.
+# drag-n-drop copied to another machine and run on that machine as long
+# as all of the system libraries are compatible.
+#
+# If you pass plugins to fixup_bundle as the libs parameter, you should
+# install them or copy them into the bundle before calling fixup_bundle.
+# The "libs" parameter is a list of libraries that must be fixed up, but
+# that cannot be determined by otool output analysis. (i.e., plugins)
+#
+# Gather all the keys for all the executables and libraries in a bundle,
+# and then, for each key, copy each prerequisite into the bundle. Then
+# fix each one up according to its own list of prerequisites.
+#
+# Then clear all the keys and call verify_app on the final bundle to
+# ensure that it is truly standalone.
+#
+# ::
#
-# If you pass plugins to fixup_bundle as the libs parameter, you should install
-# them or copy them into the bundle before calling fixup_bundle. The "libs"
-# parameter is a list of libraries that must be fixed up, but that cannot be
-# determined by otool output analysis. (i.e., plugins)
+# COPY_AND_FIXUP_BUNDLE(<src> <dst> <libs> <dirs>)
#
-# Gather all the keys for all the executables and libraries in a bundle, and
-# then, for each key, copy each prerequisite into the bundle. Then fix each one
-# up according to its own list of prerequisites.
+# Makes a copy of the bundle <src> at location <dst> and then fixes up
+# the new copied bundle in-place at <dst>...
#
-# Then clear all the keys and call verify_app on the final bundle to ensure
-# that it is truly standalone.
+# ::
#
-# COPY_AND_FIXUP_BUNDLE(<src> <dst> <libs> <dirs>)
-# Makes a copy of the bundle <src> at location <dst> and then fixes up the
-# new copied bundle in-place at <dst>...
+# VERIFY_APP(<app>)
#
-# VERIFY_APP(<app>)
-# Verifies that an application <app> appears valid based on running analysis
-# tools on it. Calls "message(FATAL_ERROR" if the application is not verified.
+# Verifies that an application <app> appears valid based on running
+# analysis tools on it. Calls "message(FATAL_ERROR" if the application
+# is not verified.
#
-# GET_BUNDLE_MAIN_EXECUTABLE(<bundle> <result_var>)
-# The result will be the full path name of the bundle's main executable file
-# or an "error:" prefixed string if it could not be determined.
+# ::
#
-# GET_DOTAPP_DIR(<exe> <dotapp_dir_var>)
-# Returns the nearest parent dir whose name ends with ".app" given the full
-# path to an executable. If there is no such parent dir, then simply return
-# the dir containing the executable.
+# GET_BUNDLE_MAIN_EXECUTABLE(<bundle> <result_var>)
+#
+# The result will be the full path name of the bundle's main executable
+# file or an "error:" prefixed string if it could not be determined.
+#
+# ::
+#
+# GET_DOTAPP_DIR(<exe> <dotapp_dir_var>)
+#
+# Returns the nearest parent dir whose name ends with ".app" given the
+# full path to an executable. If there is no such parent dir, then
+# simply return the dir containing the executable.
#
# The returned directory may or may not exist.
#
-# GET_BUNDLE_AND_EXECUTABLE(<app> <bundle_var> <executable_var> <valid_var>)
+# ::
+#
+# GET_BUNDLE_AND_EXECUTABLE(<app> <bundle_var> <executable_var> <valid_var>)
+#
# Takes either a ".app" directory name or the name of an executable
# nested inside a ".app" directory and returns the path to the ".app"
# directory in <bundle_var> and the path to its main executable in
# <executable_var>
#
-# GET_BUNDLE_ALL_EXECUTABLES(<bundle> <exes_var>)
-# Scans the given bundle recursively for all executable files and accumulates
-# them into a variable.
+# ::
+#
+# GET_BUNDLE_ALL_EXECUTABLES(<bundle> <exes_var>)
+#
+# Scans the given bundle recursively for all executable files and
+# accumulates them into a variable.
+#
+# ::
+#
+# GET_ITEM_KEY(<item> <key_var>)
+#
+# Given a file (item) name, generate a key that should be unique
+# considering the set of libraries that need copying or fixing up to
+# make a bundle standalone. This is essentially the file name including
+# extension with "." replaced by "_"
#
-# GET_ITEM_KEY(<item> <key_var>)
-# Given a file (item) name, generate a key that should be unique considering
-# the set of libraries that need copying or fixing up to make a bundle
-# standalone. This is essentially the file name including extension with "."
-# replaced by "_"
+# This key is used as a prefix for CMake variables so that we can
+# associate a set of variables with a given item based on its key.
#
-# This key is used as a prefix for CMake variables so that we can associate a
-# set of variables with a given item based on its key.
+# ::
#
-# CLEAR_BUNDLE_KEYS(<keys_var>)
-# Loop over the list of keys, clearing all the variables associated with each
-# key. After the loop, clear the list of keys itself.
+# CLEAR_BUNDLE_KEYS(<keys_var>)
#
-# Caller of get_bundle_keys should call clear_bundle_keys when done with list
-# of keys.
+# Loop over the list of keys, clearing all the variables associated with
+# each key. After the loop, clear the list of keys itself.
#
-# SET_BUNDLE_KEY_VALUES(<keys_var> <context> <item> <exepath> <dirs>
-# <copyflag>)
-# Add a key to the list (if necessary) for the given item. If added,
+# Caller of get_bundle_keys should call clear_bundle_keys when done with
+# list of keys.
+#
+# ::
+#
+# SET_BUNDLE_KEY_VALUES(<keys_var> <context> <item> <exepath> <dirs>
+# <copyflag>)
+#
+# Add a key to the list (if necessary) for the given item. If added,
# also set all the variables associated with that key.
#
-# GET_BUNDLE_KEYS(<app> <libs> <dirs> <keys_var>)
-# Loop over all the executable and library files within the bundle (and given
-# as extra <libs>) and accumulate a list of keys representing them. Set
-# values associated with each key such that we can loop over all of them and
-# copy prerequisite libs into the bundle and then do appropriate
-# install_name_tool fixups.
-#
-# COPY_RESOLVED_ITEM_INTO_BUNDLE(<resolved_item> <resolved_embedded_item>)
-# Copy a resolved item into the bundle if necessary. Copy is not necessary if
-# the resolved_item is "the same as" the resolved_embedded_item.
-#
-# COPY_RESOLVED_FRAMEWORK_INTO_BUNDLE(<resolved_item> <resolved_embedded_item>)
-# Copy a resolved framework into the bundle if necessary. Copy is not necessary
-# if the resolved_item is "the same as" the resolved_embedded_item.
-#
-# By default, BU_COPY_FULL_FRAMEWORK_CONTENTS is not set. If you want full
-# frameworks embedded in your bundles, set BU_COPY_FULL_FRAMEWORK_CONTENTS to
-# ON before calling fixup_bundle. By default,
-# COPY_RESOLVED_FRAMEWORK_INTO_BUNDLE copies the framework dylib itself plus
-# the framework Resources directory.
-#
-# FIXUP_BUNDLE_ITEM(<resolved_embedded_item> <exepath> <dirs>)
-# Get the direct/non-system prerequisites of the resolved embedded item. For
-# each prerequisite, change the way it is referenced to the value of the
-# _EMBEDDED_ITEM keyed variable for that prerequisite. (Most likely changing to
-# an "@executable_path" style reference.)
-#
-# This function requires that the resolved_embedded_item be "inside" the bundle
-# already. In other words, if you pass plugins to fixup_bundle as the libs
-# parameter, you should install them or copy them into the bundle before
-# calling fixup_bundle. The "libs" parameter is a list of libraries that must
-# be fixed up, but that cannot be determined by otool output analysis. (i.e.,
-# plugins)
-#
-# Also, change the id of the item being fixed up to its own _EMBEDDED_ITEM
-# value.
+# ::
+#
+# GET_BUNDLE_KEYS(<app> <libs> <dirs> <keys_var>)
+#
+# Loop over all the executable and library files within the bundle (and
+# given as extra <libs>) and accumulate a list of keys representing
+# them. Set values associated with each key such that we can loop over
+# all of them and copy prerequisite libs into the bundle and then do
+# appropriate install_name_tool fixups.
+#
+# ::
+#
+# COPY_RESOLVED_ITEM_INTO_BUNDLE(<resolved_item> <resolved_embedded_item>)
+#
+# Copy a resolved item into the bundle if necessary. Copy is not
+# necessary if the resolved_item is "the same as" the
+# resolved_embedded_item.
+#
+# ::
+#
+# COPY_RESOLVED_FRAMEWORK_INTO_BUNDLE(<resolved_item> <resolved_embedded_item>)
+#
+# Copy a resolved framework into the bundle if necessary. Copy is not
+# necessary if the resolved_item is "the same as" the
+# resolved_embedded_item.
+#
+# By default, BU_COPY_FULL_FRAMEWORK_CONTENTS is not set. If you want
+# full frameworks embedded in your bundles, set
+# BU_COPY_FULL_FRAMEWORK_CONTENTS to ON before calling fixup_bundle. By
+# default, COPY_RESOLVED_FRAMEWORK_INTO_BUNDLE copies the framework
+# dylib itself plus the framework Resources directory.
+#
+# ::
+#
+# FIXUP_BUNDLE_ITEM(<resolved_embedded_item> <exepath> <dirs>)
+#
+# Get the direct/non-system prerequisites of the resolved embedded item.
+# For each prerequisite, change the way it is referenced to the value of
+# the _EMBEDDED_ITEM keyed variable for that prerequisite. (Most likely
+# changing to an "@executable_path" style reference.)
+#
+# This function requires that the resolved_embedded_item be "inside" the
+# bundle already. In other words, if you pass plugins to fixup_bundle
+# as the libs parameter, you should install them or copy them into the
+# bundle before calling fixup_bundle. The "libs" parameter is a list of
+# libraries that must be fixed up, but that cannot be determined by
+# otool output analysis. (i.e., plugins)
+#
+# Also, change the id of the item being fixed up to its own
+# _EMBEDDED_ITEM value.
#
# Accumulate changes in a local variable and make *one* call to
-# install_name_tool at the end of the function with all the changes at once.
+# install_name_tool at the end of the function with all the changes at
+# once.
#
# If the BU_CHMOD_BUNDLE_ITEMS variable is set then bundle items will be
# marked writable before install_name_tool tries to change them.
#
-# VERIFY_BUNDLE_PREREQUISITES(<bundle> <result_var> <info_var>)
-# Verifies that the sum of all prerequisites of all files inside the bundle
-# are contained within the bundle or are "system" libraries, presumed to exist
-# everywhere.
+# ::
+#
+# VERIFY_BUNDLE_PREREQUISITES(<bundle> <result_var> <info_var>)
+#
+# Verifies that the sum of all prerequisites of all files inside the
+# bundle are contained within the bundle or are "system" libraries,
+# presumed to exist everywhere.
+#
+# ::
+#
+# VERIFY_BUNDLE_SYMLINKS(<bundle> <result_var> <info_var>)
#
-# VERIFY_BUNDLE_SYMLINKS(<bundle> <result_var> <info_var>)
-# Verifies that any symlinks found in the bundle point to other files that are
-# already also in the bundle... Anything that points to an external file causes
-# this function to fail the verification.
+# Verifies that any symlinks found in the bundle point to other files
+# that are already also in the bundle... Anything that points to an
+# external file causes this function to fail the verification.
#=============================================================================
# Copyright 2008-2009 Kitware, Inc.
diff --git a/Modules/CMakeAddFortranSubdirectory.cmake b/Modules/CMakeAddFortranSubdirectory.cmake
index abd910055c..2e5a76f4c8 100644
--- a/Modules/CMakeAddFortranSubdirectory.cmake
+++ b/Modules/CMakeAddFortranSubdirectory.cmake
@@ -1,29 +1,37 @@
-# - Use MinGW gfortran from VS if a fortran compiler is not found.
-# The 'add_fortran_subdirectory' function adds a subdirectory
-# to a project that contains a fortran only sub-project. The module
-# will check the current compiler and see if it can support fortran.
-# If no fortran compiler is found and the compiler is MSVC, then
-# this module will find the MinGW gfortran. It will then use
-# an external project to build with the MinGW tools. It will also
-# create imported targets for the libraries created. This will only
-# work if the fortran code is built into a dll, so BUILD_SHARED_LIBS
-# is turned on in the project. In addition the CMAKE_GNUtoMS option
-# is set to on, so that the MS .lib files are created.
-# Usage is as follows:
-# cmake_add_fortran_subdirectory(
-# <subdir> # name of subdirectory
-# PROJECT <project_name> # project name in subdir top CMakeLists.txt
-# ARCHIVE_DIR <dir> # dir where project places .lib files
-# RUNTIME_DIR <dir> # dir where project places .dll files
-# LIBRARIES <lib>... # names of library targets to import
-# LINK_LIBRARIES # link interface libraries for LIBRARIES
-# [LINK_LIBS <lib> <dep>...]...
-# CMAKE_COMMAND_LINE ... # extra command line flags to pass to cmake
-# NO_EXTERNAL_INSTALL # skip installation of external project
-# )
-# Relative paths in ARCHIVE_DIR and RUNTIME_DIR are interpreted with respect
-# to the build directory corresponding to the source directory in which the
-# function is invoked.
+#.rst:
+# CMakeAddFortranSubdirectory
+# ---------------------------
+#
+# Use MinGW gfortran from VS if a fortran compiler is not found.
+#
+# The 'add_fortran_subdirectory' function adds a subdirectory to a
+# project that contains a fortran only sub-project. The module will
+# check the current compiler and see if it can support fortran. If no
+# fortran compiler is found and the compiler is MSVC, then this module
+# will find the MinGW gfortran. It will then use an external project to
+# build with the MinGW tools. It will also create imported targets for
+# the libraries created. This will only work if the fortran code is
+# built into a dll, so BUILD_SHARED_LIBS is turned on in the project.
+# In addition the CMAKE_GNUtoMS option is set to on, so that the MS .lib
+# files are created. Usage is as follows:
+#
+# ::
+#
+# cmake_add_fortran_subdirectory(
+# <subdir> # name of subdirectory
+# PROJECT <project_name> # project name in subdir top CMakeLists.txt
+# ARCHIVE_DIR <dir> # dir where project places .lib files
+# RUNTIME_DIR <dir> # dir where project places .dll files
+# LIBRARIES <lib>... # names of library targets to import
+# LINK_LIBRARIES # link interface libraries for LIBRARIES
+# [LINK_LIBS <lib> <dep>...]...
+# CMAKE_COMMAND_LINE ... # extra command line flags to pass to cmake
+# NO_EXTERNAL_INSTALL # skip installation of external project
+# )
+#
+# Relative paths in ARCHIVE_DIR and RUNTIME_DIR are interpreted with
+# respect to the build directory corresponding to the source directory
+# in which the function is invoked.
#
# Limitations:
#
diff --git a/Modules/CMakeBackwardCompatibilityCXX.cmake b/Modules/CMakeBackwardCompatibilityCXX.cmake
index cfc1d91f92..343fdb20ec 100644
--- a/Modules/CMakeBackwardCompatibilityCXX.cmake
+++ b/Modules/CMakeBackwardCompatibilityCXX.cmake
@@ -1,10 +1,17 @@
-# - define a bunch of backwards compatibility variables
-# CMAKE_ANSI_CXXFLAGS - flag for ansi c++
-# CMAKE_HAS_ANSI_STRING_STREAM - has <strstream>
-# include(TestForANSIStreamHeaders)
-# include(CheckIncludeFileCXX)
-# include(TestForSTDNamespace)
-# include(TestForANSIForScope)
+#.rst:
+# CMakeBackwardCompatibilityCXX
+# -----------------------------
+#
+# define a bunch of backwards compatibility variables
+#
+# ::
+#
+# CMAKE_ANSI_CXXFLAGS - flag for ansi c++
+# CMAKE_HAS_ANSI_STRING_STREAM - has <strstream>
+# include(TestForANSIStreamHeaders)
+# include(CheckIncludeFileCXX)
+# include(TestForSTDNamespace)
+# include(TestForANSIForScope)
#=============================================================================
# Copyright 2002-2009 Kitware, Inc.
diff --git a/Modules/CMakeDependentOption.cmake b/Modules/CMakeDependentOption.cmake
index 990728f9f5..7e9f183f11 100644
--- a/Modules/CMakeDependentOption.cmake
+++ b/Modules/CMakeDependentOption.cmake
@@ -1,15 +1,23 @@
-# - Macro to provide an option dependent on other options.
+#.rst:
+# CMakeDependentOption
+# --------------------
+#
+# Macro to provide an option dependent on other options.
+#
# This macro presents an option to the user only if a set of other
-# conditions are true. When the option is not presented a default
-# value is used, but any value set by the user is preserved for when
-# the option is presented again.
-# Example invocation:
-# CMAKE_DEPENDENT_OPTION(USE_FOO "Use Foo" ON
-# "USE_BAR;NOT USE_ZOT" OFF)
-# If USE_BAR is true and USE_ZOT is false, this provides an option called
-# USE_FOO that defaults to ON. Otherwise, it sets USE_FOO to OFF. If
-# the status of USE_BAR or USE_ZOT ever changes, any value for the
-# USE_FOO option is saved so that when the option is re-enabled it
+# conditions are true. When the option is not presented a default value
+# is used, but any value set by the user is preserved for when the
+# option is presented again. Example invocation:
+#
+# ::
+#
+# CMAKE_DEPENDENT_OPTION(USE_FOO "Use Foo" ON
+# "USE_BAR;NOT USE_ZOT" OFF)
+#
+# If USE_BAR is true and USE_ZOT is false, this provides an option
+# called USE_FOO that defaults to ON. Otherwise, it sets USE_FOO to
+# OFF. If the status of USE_BAR or USE_ZOT ever changes, any value for
+# the USE_FOO option is saved so that when the option is re-enabled it
# retains its old value.
#=============================================================================
diff --git a/Modules/CMakeDetermineVSServicePack.cmake b/Modules/CMakeDetermineVSServicePack.cmake
index f49482e7fd..353aed6f01 100644
--- a/Modules/CMakeDetermineVSServicePack.cmake
+++ b/Modules/CMakeDetermineVSServicePack.cmake
@@ -1,22 +1,34 @@
-# - Determine the Visual Studio service pack of the 'cl' in use.
+#.rst:
+# CMakeDetermineVSServicePack
+# ---------------------------
+#
+# Determine the Visual Studio service pack of the 'cl' in use.
+#
# The functionality of this module has been superseded by the platform
-# variable CMAKE_<LANG>_COMPILER_VERSION that contains the compiler version
-# number.
+# variable CMAKE_<LANG>_COMPILER_VERSION that contains the compiler
+# version number.
#
# Usage:
-# if(MSVC)
-# include(CMakeDetermineVSServicePack)
-# DetermineVSServicePack( my_service_pack )
-# if( my_service_pack )
-# message(STATUS "Detected: ${my_service_pack}")
-# endif()
-# endif()
+#
+# ::
+#
+# if(MSVC)
+# include(CMakeDetermineVSServicePack)
+# DetermineVSServicePack( my_service_pack )
+# if( my_service_pack )
+# message(STATUS "Detected: ${my_service_pack}")
+# endif()
+# endif()
+#
# Function DetermineVSServicePack sets the given variable to one of the
# following values or an empty string if unknown:
-# vc80, vc80sp1
-# vc90, vc90sp1
-# vc100, vc100sp1
-# vc110, vc110sp1, vc110sp2
+#
+# ::
+#
+# vc80, vc80sp1
+# vc90, vc90sp1
+# vc100, vc100sp1
+# vc110, vc110sp1, vc110sp2
#=============================================================================
# Copyright 2009-2013 Kitware, Inc.
diff --git a/Modules/CMakeExpandImportedTargets.cmake b/Modules/CMakeExpandImportedTargets.cmake
index f5c009cadb..47ac31678f 100644
--- a/Modules/CMakeExpandImportedTargets.cmake
+++ b/Modules/CMakeExpandImportedTargets.cmake
@@ -1,19 +1,32 @@
+#.rst:
+# CMakeExpandImportedTargets
+# --------------------------
+#
+#
+#
# CMAKE_EXPAND_IMPORTED_TARGETS(<var> LIBRARIES lib1 lib2...libN
-# [CONFIGURATION <config>] )
+#
+# ::
+#
+# [CONFIGURATION <config>] )
+#
+#
#
# CMAKE_EXPAND_IMPORTED_TARGETS() takes a list of libraries and replaces
-# all imported targets contained in this list with their actual file paths
-# of the referenced libraries on disk, including the libraries from their
-# link interfaces.
-# If a CONFIGURATION is given, it uses the respective configuration of the
-# imported targets if it exists. If no CONFIGURATION is given, it uses
-# the first configuration from ${CMAKE_CONFIGURATION_TYPES} if set, otherwise
-# ${CMAKE_BUILD_TYPE}.
-# This macro is used by all Check*.cmake files which use
-# try_compile() or try_run() and support CMAKE_REQUIRED_LIBRARIES , so that
-# these checks support imported targets in CMAKE_REQUIRED_LIBRARIES:
-# cmake_expand_imported_targets(expandedLibs LIBRARIES ${CMAKE_REQUIRED_LIBRARIES}
-# CONFIGURATION "${CMAKE_TRY_COMPILE_CONFIGURATION}" )
+# all imported targets contained in this list with their actual file
+# paths of the referenced libraries on disk, including the libraries
+# from their link interfaces. If a CONFIGURATION is given, it uses the
+# respective configuration of the imported targets if it exists. If no
+# CONFIGURATION is given, it uses the first configuration from
+# ${CMAKE_CONFIGURATION_TYPES} if set, otherwise ${CMAKE_BUILD_TYPE}.
+# This macro is used by all Check*.cmake files which use try_compile()
+# or try_run() and support CMAKE_REQUIRED_LIBRARIES , so that these
+# checks support imported targets in CMAKE_REQUIRED_LIBRARIES:
+#
+# ::
+#
+# cmake_expand_imported_targets(expandedLibs LIBRARIES ${CMAKE_REQUIRED_LIBRARIES}
+# CONFIGURATION "${CMAKE_TRY_COMPILE_CONFIGURATION}" )
#=============================================================================
diff --git a/Modules/CMakeFindFrameworks.cmake b/Modules/CMakeFindFrameworks.cmake
index 7fdeb84bef..6a8bcd4548 100644
--- a/Modules/CMakeFindFrameworks.cmake
+++ b/Modules/CMakeFindFrameworks.cmake
@@ -1,4 +1,8 @@
-# - helper module to find OSX frameworks
+#.rst:
+# CMakeFindFrameworks
+# -------------------
+#
+# helper module to find OSX frameworks
#=============================================================================
# Copyright 2003-2009 Kitware, Inc.
diff --git a/Modules/CMakeFindPackageMode.cmake b/Modules/CMakeFindPackageMode.cmake
index e5216f4e0a..9f97ee5728 100644
--- a/Modules/CMakeFindPackageMode.cmake
+++ b/Modules/CMakeFindPackageMode.cmake
@@ -1,12 +1,21 @@
-# This file is executed by cmake when invoked with --find-package.
-# It expects that the following variables are set using -D:
-# NAME = name of the package
-# COMPILER_ID = the CMake compiler ID for which the result is, i.e. GNU/Intel/Clang/MSVC, etc.
-# LANGUAGE = language for which the result will be used, i.e. C/CXX/Fortan/ASM
-# MODE = EXIST : only check for existence of the given package
-# COMPILE : print the flags needed for compiling an object file which uses the given package
-# LINK : print the flags needed for linking when using the given package
-# QUIET = if TRUE, don't print anything
+#.rst:
+# CMakeFindPackageMode
+# --------------------
+#
+#
+#
+# This file is executed by cmake when invoked with --find-package. It
+# expects that the following variables are set using -D:
+#
+# ::
+#
+# NAME = name of the package
+# COMPILER_ID = the CMake compiler ID for which the result is, i.e. GNU/Intel/Clang/MSVC, etc.
+# LANGUAGE = language for which the result will be used, i.e. C/CXX/Fortan/ASM
+# MODE = EXIST : only check for existence of the given package
+# COMPILE : print the flags needed for compiling an object file which uses the given package
+# LINK : print the flags needed for linking when using the given package
+# QUIET = if TRUE, don't print anything
#=============================================================================
# Copyright 2006-2011 Alexander Neundorf, <neundorf@kde.org>
diff --git a/Modules/CMakeForceCompiler.cmake b/Modules/CMakeForceCompiler.cmake
index 207c8ad356..0e6b5af3cb 100644
--- a/Modules/CMakeForceCompiler.cmake
+++ b/Modules/CMakeForceCompiler.cmake
@@ -1,33 +1,54 @@
+#.rst:
+# CMakeForceCompiler
+# ------------------
+#
+#
+#
# This module defines macros intended for use by cross-compiling
# toolchain files when CMake is not able to automatically detect the
# compiler identification.
#
# Macro CMAKE_FORCE_C_COMPILER has the following signature:
-# CMAKE_FORCE_C_COMPILER(<compiler> <compiler-id>)
-# It sets CMAKE_C_COMPILER to the given compiler and the cmake
-# internal variable CMAKE_C_COMPILER_ID to the given compiler-id.
-# It also bypasses the check for working compiler and basic compiler
-# information tests.
+#
+# ::
+#
+# CMAKE_FORCE_C_COMPILER(<compiler> <compiler-id>)
+#
+# It sets CMAKE_C_COMPILER to the given compiler and the cmake internal
+# variable CMAKE_C_COMPILER_ID to the given compiler-id. It also
+# bypasses the check for working compiler and basic compiler information
+# tests.
#
# Macro CMAKE_FORCE_CXX_COMPILER has the following signature:
-# CMAKE_FORCE_CXX_COMPILER(<compiler> <compiler-id>)
+#
+# ::
+#
+# CMAKE_FORCE_CXX_COMPILER(<compiler> <compiler-id>)
+#
# It sets CMAKE_CXX_COMPILER to the given compiler and the cmake
-# internal variable CMAKE_CXX_COMPILER_ID to the given compiler-id.
-# It also bypasses the check for working compiler and basic compiler
+# internal variable CMAKE_CXX_COMPILER_ID to the given compiler-id. It
+# also bypasses the check for working compiler and basic compiler
# information tests.
#
# Macro CMAKE_FORCE_Fortran_COMPILER has the following signature:
-# CMAKE_FORCE_Fortran_COMPILER(<compiler> <compiler-id>)
+#
+# ::
+#
+# CMAKE_FORCE_Fortran_COMPILER(<compiler> <compiler-id>)
+#
# It sets CMAKE_Fortran_COMPILER to the given compiler and the cmake
# internal variable CMAKE_Fortran_COMPILER_ID to the given compiler-id.
# It also bypasses the check for working compiler and basic compiler
# information tests.
#
# So a simple toolchain file could look like this:
-# include (CMakeForceCompiler)
-# set(CMAKE_SYSTEM_NAME Generic)
-# CMAKE_FORCE_C_COMPILER (chc12 MetrowerksHicross)
-# CMAKE_FORCE_CXX_COMPILER (chc12 MetrowerksHicross)
+#
+# ::
+#
+# include (CMakeForceCompiler)
+# set(CMAKE_SYSTEM_NAME Generic)
+# CMAKE_FORCE_C_COMPILER (chc12 MetrowerksHicross)
+# CMAKE_FORCE_CXX_COMPILER (chc12 MetrowerksHicross)
#=============================================================================
# Copyright 2007-2009 Kitware, Inc.
diff --git a/Modules/CMakeGraphVizOptions.cmake b/Modules/CMakeGraphVizOptions.cmake
index 2f04abbcb6..63009dcb06 100644
--- a/Modules/CMakeGraphVizOptions.cmake
+++ b/Modules/CMakeGraphVizOptions.cmake
@@ -1,72 +1,111 @@
-##section Variables specific to the graphviz support
-##end
-##module
-# - The builtin graphviz support of CMake.
-# CMake can generate graphviz files, showing the dependencies between
-# the targets in a project and also external libraries which are linked
-# against.
-# When CMake is run with the --graphiz=foo option, it will produce
-# * a foo.dot file showing all dependencies in the project
-# * a foo.dot.<target> file for each target, file showing on which other targets the respective target depends
-# * a foo.dot.<target>.dependers file, showing which other targets depend on the respective target
-#
-# This can result in huge graphs. Using the file CMakeGraphVizOptions.cmake
-# the look and content of the generated graphs can be influenced.
-# This file is searched first in ${CMAKE_BINARY_DIR} and then in
-# ${CMAKE_SOURCE_DIR}. If found, it is read and the variables set in it
-# are used to adjust options for the generated graphviz files.
-##end
-#
-##variable
-# GRAPHVIZ_GRAPH_TYPE - The graph type
-# Mandatory : NO
-# Default : "digraph"
-##end
-##variable
-# GRAPHVIZ_GRAPH_NAME - The graph name.
-# Mandatory : NO
-# Default : "GG"
-##end
-##variable
-# GRAPHVIZ_GRAPH_HEADER - The header written at the top of the graphviz file.
-# Mandatory : NO
-# Default : "node [n fontsize = "12"];"
-##end
-##variable
-# GRAPHVIZ_NODE_PREFIX - The prefix for each node in the graphviz file.
-# Mandatory : NO
-# Default : "node"
-##end
-##variable
-# GRAPHVIZ_EXECUTABLES - Set this to FALSE to exclude executables from the generated graphs.
-# Mandatory : NO
-# Default : TRUE
-##end
-##variable
-# GRAPHVIZ_STATIC_LIBS - Set this to FALSE to exclude static libraries from the generated graphs.
-# Mandatory : NO
-# Default : TRUE
-##end
-##variable
-# GRAPHVIZ_SHARED_LIBS - Set this to FALSE to exclude shared libraries from the generated graphs.
-# Mandatory : NO
-# Default : TRUE
-##end
-##variable
-# GRAPHVIZ_MODULE_LIBS - Set this to FALSE to exclude module libraries from the generated graphs.
-# Mandatory : NO
-# Default : TRUE
-##end
-##variable
-# GRAPHVIZ_EXTERNAL_LIBS - Set this to FALSE to exclude external libraries from the generated graphs.
-# Mandatory : NO
-# Default : TRUE
-##end
-##variable
-# GRAPHVIZ_IGNORE_TARGETS - A list of regular expressions for ignoring targets.
-# Mandatory : NO
-# Default : empty
-##end
+#.rst:
+# CMakeGraphVizOptions
+# --------------------
+#
+# The builtin graphviz support of CMake.
+#
+# #section Variables specific to the graphviz support #end #module CMake
+# can generate graphviz files, showing the dependencies between the
+# targets in a project and also external libraries which are linked
+# against. When CMake is run with the --graphiz=foo option, it will
+# produce
+#
+# ::
+#
+# * a foo.dot file showing all dependencies in the project
+# * a foo.dot.<target> file for each target, file showing on which other targets the respective target depends
+# * a foo.dot.<target>.dependers file, showing which other targets depend on the respective target
+#
+#
+#
+# This can result in huge graphs. Using the file
+# CMakeGraphVizOptions.cmake the look and content of the generated
+# graphs can be influenced. This file is searched first in
+# ${CMAKE_BINARY_DIR} and then in ${CMAKE_SOURCE_DIR}. If found, it is
+# read and the variables set in it are used to adjust options for the
+# generated graphviz files. #end
+#
+# #variable
+#
+# ::
+#
+# GRAPHVIZ_GRAPH_TYPE - The graph type
+# Mandatory : NO
+# Default : "digraph"
+#
+# #end #variable
+#
+# ::
+#
+# GRAPHVIZ_GRAPH_NAME - The graph name.
+# Mandatory : NO
+# Default : "GG"
+#
+# #end #variable
+#
+# ::
+#
+# GRAPHVIZ_GRAPH_HEADER - The header written at the top of the graphviz file.
+# Mandatory : NO
+# Default : "node [n fontsize = "12"];"
+#
+# #end #variable
+#
+# ::
+#
+# GRAPHVIZ_NODE_PREFIX - The prefix for each node in the graphviz file.
+# Mandatory : NO
+# Default : "node"
+#
+# #end #variable
+#
+# ::
+#
+# GRAPHVIZ_EXECUTABLES - Set this to FALSE to exclude executables from the generated graphs.
+# Mandatory : NO
+# Default : TRUE
+#
+# #end #variable
+#
+# ::
+#
+# GRAPHVIZ_STATIC_LIBS - Set this to FALSE to exclude static libraries from the generated graphs.
+# Mandatory : NO
+# Default : TRUE
+#
+# #end #variable
+#
+# ::
+#
+# GRAPHVIZ_SHARED_LIBS - Set this to FALSE to exclude shared libraries from the generated graphs.
+# Mandatory : NO
+# Default : TRUE
+#
+# #end #variable
+#
+# ::
+#
+# GRAPHVIZ_MODULE_LIBS - Set this to FALSE to exclude module libraries from the generated graphs.
+# Mandatory : NO
+# Default : TRUE
+#
+# #end #variable
+#
+# ::
+#
+# GRAPHVIZ_EXTERNAL_LIBS - Set this to FALSE to exclude external libraries from the generated graphs.
+# Mandatory : NO
+# Default : TRUE
+#
+# #end #variable
+#
+# ::
+#
+# GRAPHVIZ_IGNORE_TARGETS - A list of regular expressions for ignoring targets.
+# Mandatory : NO
+# Default : empty
+#
+# #end
#=============================================================================
# Copyright 2007-2009 Kitware, Inc.
diff --git a/Modules/CMakePackageConfigHelpers.cmake b/Modules/CMakePackageConfigHelpers.cmake
index 3c56b7fcc6..855af9c9f5 100644
--- a/Modules/CMakePackageConfigHelpers.cmake
+++ b/Modules/CMakePackageConfigHelpers.cmake
@@ -1,135 +1,183 @@
-# - CONFIGURE_PACKAGE_CONFIG_FILE(), WRITE_BASIC_PACKAGE_VERSION_FILE()
+#.rst:
+# CMakePackageConfigHelpers
+# -------------------------
+#
+# CONFIGURE_PACKAGE_CONFIG_FILE(), WRITE_BASIC_PACKAGE_VERSION_FILE()
+#
+#
+#
+# ::
+#
+# CONFIGURE_PACKAGE_CONFIG_FILE(<input> <output> INSTALL_DESTINATION <path>
+# [PATH_VARS <var1> <var2> ... <varN>]
+# [NO_SET_AND_CHECK_MACRO]
+# [NO_CHECK_REQUIRED_COMPONENTS_MACRO]
+# [NO_FIND_DEPENDENCY_MACRO])
+#
#
-# CONFIGURE_PACKAGE_CONFIG_FILE(<input> <output> INSTALL_DESTINATION <path>
-# [PATH_VARS <var1> <var2> ... <varN>]
-# [NO_SET_AND_CHECK_MACRO]
-# [NO_CHECK_REQUIRED_COMPONENTS_MACRO]
-# [NO_FIND_DEPENDENCY_MACRO])
#
# CONFIGURE_PACKAGE_CONFIG_FILE() should be used instead of the plain
-# configure_file() command when creating the <Name>Config.cmake or <Name>-config.cmake
-# file for installing a project or library. It helps making the resulting package
-# relocatable by avoiding hardcoded paths in the installed Config.cmake file.
+# configure_file() command when creating the <Name>Config.cmake or
+# <Name>-config.cmake file for installing a project or library. It
+# helps making the resulting package relocatable by avoiding hardcoded
+# paths in the installed Config.cmake file.
#
# In a FooConfig.cmake file there may be code like this to make the
# install destinations know to the using project:
-# set(FOO_INCLUDE_DIR "@CMAKE_INSTALL_FULL_INCLUDEDIR@" )
-# set(FOO_DATA_DIR "@CMAKE_INSTALL_PREFIX@/@RELATIVE_DATA_INSTALL_DIR@" )
-# set(FOO_ICONS_DIR "@CMAKE_INSTALL_PREFIX@/share/icons" )
-# ...logic to determine installedPrefix from the own location...
-# set(FOO_CONFIG_DIR "${installedPrefix}/@CONFIG_INSTALL_DIR@" )
-# All 4 options shown above are not sufficient, since the first 3 hardcode
-# the absolute directory locations, and the 4th case works only if the logic
-# to determine the installedPrefix is correct, and if CONFIG_INSTALL_DIR contains
-# a relative path, which in general cannot be guaranteed.
-# This has the effect that the resulting FooConfig.cmake file would work poorly
-# under Windows and OSX, where users are used to choose the install location
-# of a binary package at install time, independent from how CMAKE_INSTALL_PREFIX
-# was set at build/cmake time.
-#
-# Using CONFIGURE_PACKAGE_CONFIG_FILE() helps. If used correctly, it makes the
-# resulting FooConfig.cmake file relocatable.
-# Usage:
-# 1. write a FooConfig.cmake.in file as you are used to
-# 2. insert a line containing only the string "@PACKAGE_INIT@"
-# 3. instead of set(FOO_DIR "@SOME_INSTALL_DIR@"), use set(FOO_DIR "@PACKAGE_SOME_INSTALL_DIR@")
-# (this must be after the @PACKAGE_INIT@ line)
-# 4. instead of using the normal configure_file(), use CONFIGURE_PACKAGE_CONFIG_FILE()
-#
-# The <input> and <output> arguments are the input and output file, the same way
-# as in configure_file().
-#
-# The <path> given to INSTALL_DESTINATION must be the destination where the FooConfig.cmake
-# file will be installed to. This can either be a relative or absolute path, both work.
-#
-# The variables <var1> to <varN> given as PATH_VARS are the variables which contain
-# install destinations. For each of them the macro will create a helper variable
-# PACKAGE_<var...>. These helper variables must be used
-# in the FooConfig.cmake.in file for setting the installed location. They are calculated
-# by CONFIGURE_PACKAGE_CONFIG_FILE() so that they are always relative to the
-# installed location of the package. This works both for relative and also for absolute locations.
-# For absolute locations it works only if the absolute location is a subdirectory
-# of CMAKE_INSTALL_PREFIX.
-#
-# By default configure_package_config_file() also generates two helper macros,
-# set_and_check() and check_required_components() into the FooConfig.cmake file.
-#
-# set_and_check() should be used instead of the normal set()
-# command for setting directories and file locations. Additionally to setting the
-# variable it also checks that the referenced file or directory actually exists
-# and fails with a FATAL_ERROR otherwise. This makes sure that the created
-# FooConfig.cmake file does not contain wrong references.
-# When using the NO_SET_AND_CHECK_MACRO, this macro is not generated into the
+#
+# ::
+#
+# set(FOO_INCLUDE_DIR "@CMAKE_INSTALL_FULL_INCLUDEDIR@" )
+# set(FOO_DATA_DIR "@CMAKE_INSTALL_PREFIX@/@RELATIVE_DATA_INSTALL_DIR@" )
+# set(FOO_ICONS_DIR "@CMAKE_INSTALL_PREFIX@/share/icons" )
+# ...logic to determine installedPrefix from the own location...
+# set(FOO_CONFIG_DIR "${installedPrefix}/@CONFIG_INSTALL_DIR@" )
+#
+# All 4 options shown above are not sufficient, since the first 3
+# hardcode the absolute directory locations, and the 4th case works only
+# if the logic to determine the installedPrefix is correct, and if
+# CONFIG_INSTALL_DIR contains a relative path, which in general cannot
+# be guaranteed. This has the effect that the resulting FooConfig.cmake
+# file would work poorly under Windows and OSX, where users are used to
+# choose the install location of a binary package at install time,
+# independent from how CMAKE_INSTALL_PREFIX was set at build/cmake time.
+#
+# Using CONFIGURE_PACKAGE_CONFIG_FILE() helps. If used correctly, it
+# makes the resulting FooConfig.cmake file relocatable. Usage:
+#
+# ::
+#
+# 1. write a FooConfig.cmake.in file as you are used to
+# 2. insert a line containing only the string "@PACKAGE_INIT@"
+# 3. instead of set(FOO_DIR "@SOME_INSTALL_DIR@"), use set(FOO_DIR "@PACKAGE_SOME_INSTALL_DIR@")
+# (this must be after the @PACKAGE_INIT@ line)
+# 4. instead of using the normal configure_file(), use CONFIGURE_PACKAGE_CONFIG_FILE()
+#
+#
+#
+# The <input> and <output> arguments are the input and output file, the
+# same way as in configure_file().
+#
+# The <path> given to INSTALL_DESTINATION must be the destination where
+# the FooConfig.cmake file will be installed to. This can either be a
+# relative or absolute path, both work.
+#
+# The variables <var1> to <varN> given as PATH_VARS are the variables
+# which contain install destinations. For each of them the macro will
+# create a helper variable PACKAGE_<var...>. These helper variables
+# must be used in the FooConfig.cmake.in file for setting the installed
+# location. They are calculated by CONFIGURE_PACKAGE_CONFIG_FILE() so
+# that they are always relative to the installed location of the
+# package. This works both for relative and also for absolute
+# locations. For absolute locations it works only if the absolute
+# location is a subdirectory of CMAKE_INSTALL_PREFIX.
+#
+# By default configure_package_config_file() also generates two helper
+# macros, set_and_check() and check_required_components() into the
# FooConfig.cmake file.
#
-# check_required_components(<package_name>) should be called at the end of the
-# FooConfig.cmake file if the package supports components.
-# This macro checks whether all requested, non-optional components have been found,
-# and if this is not the case, sets the Foo_FOUND variable to FALSE, so that the package
-# is considered to be not found.
-# It does that by testing the Foo_<Component>_FOUND variables for all requested
-# required components.
-# When using the NO_CHECK_REQUIRED_COMPONENTS option, this macro is not generated
+# set_and_check() should be used instead of the normal set() command for
+# setting directories and file locations. Additionally to setting the
+# variable it also checks that the referenced file or directory actually
+# exists and fails with a FATAL_ERROR otherwise. This makes sure that
+# the created FooConfig.cmake file does not contain wrong references.
+# When using the NO_SET_AND_CHECK_MACRO, this macro is not generated
# into the FooConfig.cmake file.
#
-# For an example see below the documentation for WRITE_BASIC_PACKAGE_VERSION_FILE().
-#
-#
-# WRITE_BASIC_PACKAGE_VERSION_FILE( filename VERSION major.minor.patch COMPATIBILITY (AnyNewerVersion|SameMajorVersion|ExactVersion) )
-#
-# Writes a file for use as <package>ConfigVersion.cmake file to <filename>.
-# See the documentation of find_package() for details on this.
-# filename is the output filename, it should be in the build tree.
-# major.minor.patch is the version number of the project to be installed
-# The COMPATIBILITY mode AnyNewerVersion means that the installed package version
-# will be considered compatible if it is newer or exactly the same as the requested version.
-# This mode should be used for packages which are fully backward compatible,
-# also across major versions.
-# If SameMajorVersion is used instead, then the behaviour differs from AnyNewerVersion
-# in that the major version number must be the same as requested, e.g. version 2.0 will
-# not be considered compatible if 1.0 is requested.
-# This mode should be used for packages which guarantee backward compatibility within the
-# same major version.
-# If ExactVersion is used, then the package is only considered compatible if the requested
-# version matches exactly its own version number (not considering the tweak version).
-# For example, version 1.2.3 of a package is only considered compatible to requested version 1.2.3.
-# This mode is for packages without compatibility guarantees.
-# If your project has more elaborated version matching rules, you will need to write your
-# own custom ConfigVersion.cmake file instead of using this macro.
-#
-# Internally, this macro executes configure_file() to create the resulting
-# version file. Depending on the COMPATIBLITY, either the file
-# BasicConfigVersion-SameMajorVersion.cmake.in or BasicConfigVersion-AnyNewerVersion.cmake.in
-# is used. Please note that these two files are internal to CMake and you should
-# not call configure_file() on them yourself, but they can be used as starting
+# check_required_components(<package_name>) should be called at the end
+# of the FooConfig.cmake file if the package supports components. This
+# macro checks whether all requested, non-optional components have been
+# found, and if this is not the case, sets the Foo_FOUND variable to
+# FALSE, so that the package is considered to be not found. It does
+# that by testing the Foo_<Component>_FOUND variables for all requested
+# required components. When using the NO_CHECK_REQUIRED_COMPONENTS
+# option, this macro is not generated into the FooConfig.cmake file.
+#
+# For an example see below the documentation for
+# WRITE_BASIC_PACKAGE_VERSION_FILE().
+#
+#
+#
+# ::
+#
+# WRITE_BASIC_PACKAGE_VERSION_FILE( filename VERSION major.minor.patch COMPATIBILITY (AnyNewerVersion|SameMajorVersion|ExactVersion) )
+#
+#
+#
+# Writes a file for use as <package>ConfigVersion.cmake file to
+# <filename>. See the documentation of find_package() for details on
+# this.
+#
+# ::
+#
+# filename is the output filename, it should be in the build tree.
+# major.minor.patch is the version number of the project to be installed
+#
+# The COMPATIBILITY mode AnyNewerVersion means that the installed
+# package version will be considered compatible if it is newer or
+# exactly the same as the requested version. This mode should be used
+# for packages which are fully backward compatible, also across major
+# versions. If SameMajorVersion is used instead, then the behaviour
+# differs from AnyNewerVersion in that the major version number must be
+# the same as requested, e.g. version 2.0 will not be considered
+# compatible if 1.0 is requested. This mode should be used for packages
+# which guarantee backward compatibility within the same major version.
+# If ExactVersion is used, then the package is only considered
+# compatible if the requested version matches exactly its own version
+# number (not considering the tweak version). For example, version
+# 1.2.3 of a package is only considered compatible to requested version
+# 1.2.3. This mode is for packages without compatibility guarantees.
+# If your project has more elaborated version matching rules, you will
+# need to write your own custom ConfigVersion.cmake file instead of
+# using this macro.
+#
+# Internally, this macro executes configure_file() to create the
+# resulting version file. Depending on the COMPATIBLITY, either the
+# file BasicConfigVersion-SameMajorVersion.cmake.in or
+# BasicConfigVersion-AnyNewerVersion.cmake.in is used. Please note that
+# these two files are internal to CMake and you should not call
+# configure_file() on them yourself, but they can be used as starting
# point to create more sophisticted custom ConfigVersion.cmake files.
#
#
-# Example using both configure_package_config_file() and write_basic_package_version_file():
-# CMakeLists.txt:
-# set(INCLUDE_INSTALL_DIR include/ ... CACHE )
-# set(LIB_INSTALL_DIR lib/ ... CACHE )
-# set(SYSCONFIG_INSTALL_DIR etc/foo/ ... CACHE )
-# ...
-# include(CMakePackageConfigHelpers)
-# configure_package_config_file(FooConfig.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/FooConfig.cmake
-# INSTALL_DESTINATION ${LIB_INSTALL_DIR}/Foo/cmake
-# PATH_VARS INCLUDE_INSTALL_DIR SYSCONFIG_INSTALL_DIR)
-# write_basic_package_version_file(${CMAKE_CURRENT_BINARY_DIR}/FooConfigVersion.cmake
-# VERSION 1.2.3
-# COMPATIBILITY SameMajorVersion )
-# install(FILES ${CMAKE_CURRENT_BINARY_DIR}/FooConfig.cmake ${CMAKE_CURRENT_BINARY_DIR}/FooConfigVersion.cmake
-# DESTINATION ${LIB_INSTALL_DIR}/Foo/cmake )
+#
+# Example using both configure_package_config_file() and
+# write_basic_package_version_file(): CMakeLists.txt:
+#
+# ::
+#
+# set(INCLUDE_INSTALL_DIR include/ ... CACHE )
+# set(LIB_INSTALL_DIR lib/ ... CACHE )
+# set(SYSCONFIG_INSTALL_DIR etc/foo/ ... CACHE )
+# ...
+# include(CMakePackageConfigHelpers)
+# configure_package_config_file(FooConfig.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/FooConfig.cmake
+# INSTALL_DESTINATION ${LIB_INSTALL_DIR}/Foo/cmake
+# PATH_VARS INCLUDE_INSTALL_DIR SYSCONFIG_INSTALL_DIR)
+# write_basic_package_version_file(${CMAKE_CURRENT_BINARY_DIR}/FooConfigVersion.cmake
+# VERSION 1.2.3
+# COMPATIBILITY SameMajorVersion )
+# install(FILES ${CMAKE_CURRENT_BINARY_DIR}/FooConfig.cmake ${CMAKE_CURRENT_BINARY_DIR}/FooConfigVersion.cmake
+# DESTINATION ${LIB_INSTALL_DIR}/Foo/cmake )
+#
+#
#
# With a FooConfig.cmake.in:
-# set(FOO_VERSION x.y.z)
-# ...
-# @PACKAGE_INIT@
-# ...
-# set_and_check(FOO_INCLUDE_DIR "@PACKAGE_INCLUDE_INSTALL_DIR@")
-# set_and_check(FOO_SYSCONFIG_DIR "@PACKAGE_SYSCONFIG_INSTALL_DIR@")
-#
-# check_required_components(Foo)
+#
+# ::
+#
+# set(FOO_VERSION x.y.z)
+# ...
+# @PACKAGE_INIT@
+# ...
+# set_and_check(FOO_INCLUDE_DIR "@PACKAGE_INCLUDE_INSTALL_DIR@")
+# set_and_check(FOO_SYSCONFIG_DIR "@PACKAGE_SYSCONFIG_INSTALL_DIR@")
+#
+#
+#
+# ::
+#
+# check_required_components(Foo)
#=============================================================================
diff --git a/Modules/CMakeParseArguments.cmake b/Modules/CMakeParseArguments.cmake
index 016da0c978..4248176ad6 100644
--- a/Modules/CMakeParseArguments.cmake
+++ b/Modules/CMakeParseArguments.cmake
@@ -1,64 +1,86 @@
-# CMAKE_PARSE_ARGUMENTS(<prefix> <options> <one_value_keywords> <multi_value_keywords> args...)
+#.rst:
+# CMakeParseArguments
+# -------------------
#
-# CMAKE_PARSE_ARGUMENTS() is intended to be used in macros or functions for
-# parsing the arguments given to that macro or function.
-# It processes the arguments and defines a set of variables which hold the
+#
+#
+# CMAKE_PARSE_ARGUMENTS(<prefix> <options> <one_value_keywords>
+# <multi_value_keywords> args...)
+#
+# CMAKE_PARSE_ARGUMENTS() is intended to be used in macros or functions
+# for parsing the arguments given to that macro or function. It
+# processes the arguments and defines a set of variables which hold the
# values of the respective options.
#
# The <options> argument contains all options for the respective macro,
-# i.e. keywords which can be used when calling the macro without any value
-# following, like e.g. the OPTIONAL keyword of the install() command.
+# i.e. keywords which can be used when calling the macro without any
+# value following, like e.g. the OPTIONAL keyword of the install()
+# command.
#
# The <one_value_keywords> argument contains all keywords for this macro
-# which are followed by one value, like e.g. DESTINATION keyword of the
+# which are followed by one value, like e.g. DESTINATION keyword of the
# install() command.
#
-# The <multi_value_keywords> argument contains all keywords for this macro
-# which can be followed by more than one value, like e.g. the TARGETS or
-# FILES keywords of the install() command.
+# The <multi_value_keywords> argument contains all keywords for this
+# macro which can be followed by more than one value, like e.g. the
+# TARGETS or FILES keywords of the install() command.
#
# When done, CMAKE_PARSE_ARGUMENTS() will have defined for each of the
# keywords listed in <options>, <one_value_keywords> and
# <multi_value_keywords> a variable composed of the given <prefix>
-# followed by "_" and the name of the respective keyword.
-# These variables will then hold the respective value from the argument list.
+# followed by "_" and the name of the respective keyword. These
+# variables will then hold the respective value from the argument list.
# For the <options> keywords this will be TRUE or FALSE.
#
# All remaining arguments are collected in a variable
-# <prefix>_UNPARSED_ARGUMENTS, this can be checked afterwards to see whether
-# your macro was called with unrecognized parameters.
+# <prefix>_UNPARSED_ARGUMENTS, this can be checked afterwards to see
+# whether your macro was called with unrecognized parameters.
+#
+# As an example here a my_install() macro, which takes similar arguments
+# as the real install() command:
+#
+# ::
+#
+# function(MY_INSTALL)
+# set(options OPTIONAL FAST)
+# set(oneValueArgs DESTINATION RENAME)
+# set(multiValueArgs TARGETS CONFIGURATIONS)
+# cmake_parse_arguments(MY_INSTALL "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN} )
+# ...
#
-# As an example here a my_install() macro, which takes similar arguments as the
-# real install() command:
#
-# function(MY_INSTALL)
-# set(options OPTIONAL FAST)
-# set(oneValueArgs DESTINATION RENAME)
-# set(multiValueArgs TARGETS CONFIGURATIONS)
-# cmake_parse_arguments(MY_INSTALL "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN} )
-# ...
#
# Assume my_install() has been called like this:
-# my_install(TARGETS foo bar DESTINATION bin OPTIONAL blub)
-#
-# After the cmake_parse_arguments() call the macro will have set the following
-# variables:
-# MY_INSTALL_OPTIONAL = TRUE
-# MY_INSTALL_FAST = FALSE (this option was not used when calling my_install()
-# MY_INSTALL_DESTINATION = "bin"
-# MY_INSTALL_RENAME = "" (was not used)
-# MY_INSTALL_TARGETS = "foo;bar"
-# MY_INSTALL_CONFIGURATIONS = "" (was not used)
-# MY_INSTALL_UNPARSED_ARGUMENTS = "blub" (no value expected after "OPTIONAL"
+#
+# ::
+#
+# my_install(TARGETS foo bar DESTINATION bin OPTIONAL blub)
+#
+#
+#
+# After the cmake_parse_arguments() call the macro will have set the
+# following variables:
+#
+# ::
+#
+# MY_INSTALL_OPTIONAL = TRUE
+# MY_INSTALL_FAST = FALSE (this option was not used when calling my_install()
+# MY_INSTALL_DESTINATION = "bin"
+# MY_INSTALL_RENAME = "" (was not used)
+# MY_INSTALL_TARGETS = "foo;bar"
+# MY_INSTALL_CONFIGURATIONS = "" (was not used)
+# MY_INSTALL_UNPARSED_ARGUMENTS = "blub" (no value expected after "OPTIONAL"
+#
+#
#
# You can then continue and process these variables.
#
-# Keywords terminate lists of values, e.g. if directly after a one_value_keyword
-# another recognized keyword follows, this is interpreted as the beginning of
-# the new option.
-# E.g. my_install(TARGETS foo DESTINATION OPTIONAL) would result in
-# MY_INSTALL_DESTINATION set to "OPTIONAL", but MY_INSTALL_DESTINATION would
-# be empty and MY_INSTALL_OPTIONAL would be set to TRUE therefor.
+# Keywords terminate lists of values, e.g. if directly after a
+# one_value_keyword another recognized keyword follows, this is
+# interpreted as the beginning of the new option. E.g.
+# my_install(TARGETS foo DESTINATION OPTIONAL) would result in
+# MY_INSTALL_DESTINATION set to "OPTIONAL", but MY_INSTALL_DESTINATION
+# would be empty and MY_INSTALL_OPTIONAL would be set to TRUE therefor.
#=============================================================================
# Copyright 2010 Alexander Neundorf <neundorf@kde.org>
diff --git a/Modules/CMakePrintHelpers.cmake b/Modules/CMakePrintHelpers.cmake
index ef5d857b63..72832ada6f 100644
--- a/Modules/CMakePrintHelpers.cmake
+++ b/Modules/CMakePrintHelpers.cmake
@@ -1,29 +1,52 @@
-# - Convenience macros for printing properties and variables, useful e.g. for debugging.
+#.rst:
+# CMakePrintHelpers
+# -----------------
+#
+# Convenience macros for printing properties and variables, useful e.g. for debugging.
+#
+#
+#
+#
+#
+# CMAKE_PRINT_PROPERTIES([TARGETS target1 .. targetN]
+#
+# ::
+#
+# [SOURCES source1 .. sourceN]
+# [DIRECTORIES dir1 .. dirN]
+# [TESTS test1 .. testN]
+# [CACHE_ENTRIES entry1 .. entryN]
+# PROPERTIES prop1 .. propN )
#
#
-# CMAKE_PRINT_PROPERTIES([TARGETS target1 .. targetN]
-# [SOURCES source1 .. sourceN]
-# [DIRECTORIES dir1 .. dirN]
-# [TESTS test1 .. testN]
-# [CACHE_ENTRIES entry1 .. entryN]
-# PROPERTIES prop1 .. propN )
#
# This macro prints the values of the properties of the given targets,
-# source files, directories, tests or cache entries. Exactly one of the
-# scope keywords must be used.
-# Example:
-# cmake_print_properties(TARGETS foo bar PROPERTIES LOCATION INTERFACE_INCLUDE_DIRS)
-# This will print the LOCATION and INTERFACE_INCLUDE_DIRS properties for both
-# targets foo and bar.
+# source files, directories, tests or cache entries. Exactly one of the
+# scope keywords must be used. Example:
#
+# ::
#
-# CMAKE_PRINT_VARIABLES(var1 var2 .. varN)
+# cmake_print_properties(TARGETS foo bar PROPERTIES LOCATION INTERFACE_INCLUDE_DIRS)
+#
+# This will print the LOCATION and INTERFACE_INCLUDE_DIRS properties for
+# both targets foo and bar.
+#
+#
+#
+# CMAKE_PRINT_VARIABLES(var1 var2 .. varN)
#
# This macro will print the name of each variable followed by its value.
# Example:
-# cmake_print_variables(CMAKE_C_COMPILER CMAKE_MAJOR_VERSION THIS_ONE_DOES_NOT_EXIST)
+#
+# ::
+#
+# cmake_print_variables(CMAKE_C_COMPILER CMAKE_MAJOR_VERSION THIS_ONE_DOES_NOT_EXIST)
+#
# Gives:
-# -- CMAKE_C_COMPILER="/usr/bin/gcc" ; CMAKE_MAJOR_VERSION="2" ; THIS_ONE_DOES_NOT_EXIST=""
+#
+# ::
+#
+# -- CMAKE_C_COMPILER="/usr/bin/gcc" ; CMAKE_MAJOR_VERSION="2" ; THIS_ONE_DOES_NOT_EXIST=""
#=============================================================================
# Copyright 2013 Alexander Neundorf, <neundorf@kde.org>
diff --git a/Modules/CMakePrintSystemInformation.cmake b/Modules/CMakePrintSystemInformation.cmake
index e0c73346b7..355c47dacc 100644
--- a/Modules/CMakePrintSystemInformation.cmake
+++ b/Modules/CMakePrintSystemInformation.cmake
@@ -1,7 +1,11 @@
-# - print system information
-# This file can be used for diagnostic purposes
-# just include it in a project to see various internal CMake
-# variables.
+#.rst:
+# CMakePrintSystemInformation
+# ---------------------------
+#
+# print system information
+#
+# This file can be used for diagnostic purposes just include it in a
+# project to see various internal CMake variables.
#=============================================================================
# Copyright 2002-2009 Kitware, Inc.
diff --git a/Modules/CMakePushCheckState.cmake b/Modules/CMakePushCheckState.cmake
index b37b706ac3..39f002379f 100644
--- a/Modules/CMakePushCheckState.cmake
+++ b/Modules/CMakePushCheckState.cmake
@@ -1,30 +1,37 @@
-# This module defines three macros:
-# CMAKE_PUSH_CHECK_STATE()
-# CMAKE_POP_CHECK_STATE()
-# and
-# CMAKE_RESET_CHECK_STATE()
-# These macros can be used to save, restore and reset (i.e., clear contents)
-# the state of the variables
-# CMAKE_REQUIRED_FLAGS, CMAKE_REQUIRED_DEFINITIONS, CMAKE_REQUIRED_LIBRARIES
-# and CMAKE_REQUIRED_INCLUDES used by the various Check-files coming with CMake,
-# like e.g. check_function_exists() etc.
-# The variable contents are pushed on a stack, pushing multiple times is supported.
-# This is useful e.g. when executing such tests in a Find-module, where they have to be set,
-# but after the Find-module has been executed they should have the same value
-# as they had before.
+#.rst:
+# CMakePushCheckState
+# -------------------
#
-# CMAKE_PUSH_CHECK_STATE() macro receives optional argument RESET. Whether it's specified,
-# CMAKE_PUSH_CHECK_STATE() will set all CMAKE_REQUIRED_* variables to empty values, same
-# as CMAKE_RESET_CHECK_STATE() call will do.
+#
+#
+# This module defines three macros: CMAKE_PUSH_CHECK_STATE()
+# CMAKE_POP_CHECK_STATE() and CMAKE_RESET_CHECK_STATE() These macros can
+# be used to save, restore and reset (i.e., clear contents) the state of
+# the variables CMAKE_REQUIRED_FLAGS, CMAKE_REQUIRED_DEFINITIONS,
+# CMAKE_REQUIRED_LIBRARIES and CMAKE_REQUIRED_INCLUDES used by the
+# various Check-files coming with CMake, like e.g.
+# check_function_exists() etc. The variable contents are pushed on a
+# stack, pushing multiple times is supported. This is useful e.g. when
+# executing such tests in a Find-module, where they have to be set, but
+# after the Find-module has been executed they should have the same
+# value as they had before.
+#
+# CMAKE_PUSH_CHECK_STATE() macro receives optional argument RESET.
+# Whether it's specified, CMAKE_PUSH_CHECK_STATE() will set all
+# CMAKE_REQUIRED_* variables to empty values, same as
+# CMAKE_RESET_CHECK_STATE() call will do.
#
# Usage:
-# cmake_push_check_state(RESET)
-# set(CMAKE_REQUIRED_DEFINITIONS -DSOME_MORE_DEF)
-# check_function_exists(...)
-# cmake_reset_check_state()
-# set(CMAKE_REQUIRED_DEFINITIONS -DANOTHER_DEF)
-# check_function_exists(...)
-# cmake_pop_check_state()
+#
+# ::
+#
+# cmake_push_check_state(RESET)
+# set(CMAKE_REQUIRED_DEFINITIONS -DSOME_MORE_DEF)
+# check_function_exists(...)
+# cmake_reset_check_state()
+# set(CMAKE_REQUIRED_DEFINITIONS -DANOTHER_DEF)
+# check_function_exists(...)
+# cmake_pop_check_state()
#=============================================================================
# Copyright 2006-2011 Alexander Neundorf, <neundorf@kde.org>
diff --git a/Modules/CMakeVerifyManifest.cmake b/Modules/CMakeVerifyManifest.cmake
index aebe77ea18..bff4e1e941 100644
--- a/Modules/CMakeVerifyManifest.cmake
+++ b/Modules/CMakeVerifyManifest.cmake
@@ -1,14 +1,19 @@
+#.rst:
+# CMakeVerifyManifest
+# -------------------
+#
+#
+#
# CMakeVerifyManifest.cmake
#
-# This script is used to verify that embeded manifests and
-# side by side manifests for a project match. To run this
-# script, cd to a directory and run the script with cmake -P.
-# On the command line you can pass in versions that are OK even
-# if not found in the .manifest files. For example,
-# cmake -Dallow_versions=8.0.50608.0 -PCmakeVerifyManifest.cmake
-# could be used to allow an embeded manifest of 8.0.50608.0
-# to be used in a project even if that version was not found
-# in the .manifest file.
+# This script is used to verify that embeded manifests and side by side
+# manifests for a project match. To run this script, cd to a directory
+# and run the script with cmake -P. On the command line you can pass in
+# versions that are OK even if not found in the .manifest files. For
+# example, cmake -Dallow_versions=8.0.50608.0
+# -PCmakeVerifyManifest.cmake could be used to allow an embeded manifest
+# of 8.0.50608.0 to be used in a project even if that version was not
+# found in the .manifest file.
# This script first recursively globs *.manifest files from
# the current directory. Then globs *.exe and *.dll. Each
diff --git a/Modules/CPack.cmake b/Modules/CPack.cmake
index b0260ab160..1dcc65db66 100644
--- a/Modules/CPack.cmake
+++ b/Modules/CPack.cmake
@@ -1,275 +1,428 @@
-##section Variables common to all CPack generators
-##end
-##module
-# - Build binary and source package installers.
-# The CPack module generates binary and source installers in a variety
-# of formats using the cpack program. Inclusion of the CPack module
-# adds two new targets to the resulting makefiles, package and
+#.rst:
+# CPack
+# -----
+#
+# Build binary and source package installers.
+#
+# #section Variables common to all CPack generators #end #module The
+# CPack module generates binary and source installers in a variety of
+# formats using the cpack program. Inclusion of the CPack module adds
+# two new targets to the resulting makefiles, package and
# package_source, which build the binary and source installers,
-# respectively. The generated binary installers contain everything
+# respectively. The generated binary installers contain everything
# installed via CMake's INSTALL command (and the deprecated
# INSTALL_FILES, INSTALL_PROGRAMS, and INSTALL_TARGETS commands).
#
# For certain kinds of binary installers (including the graphical
# installers on Mac OS X and Windows), CPack generates installers that
-# allow users to select individual application components to
-# install. See CPackComponent module for that.
+# allow users to select individual application components to install.
+# See CPackComponent module for that.
#
# The CPACK_GENERATOR variable has different meanings in different
-# contexts. In your CMakeLists.txt file, CPACK_GENERATOR is a
-# *list of generators*: when run with no other arguments, CPack
-# will iterate over that list and produce one package for each
-# generator. In a CPACK_PROJECT_CONFIG_FILE, though, CPACK_GENERATOR
-# is a *string naming a single generator*. If you need per-cpack-
-# generator logic to control *other* cpack settings, then you need
-# a CPACK_PROJECT_CONFIG_FILE.
+# contexts. In your CMakeLists.txt file, CPACK_GENERATOR is a *list of
+# generators*: when run with no other arguments, CPack will iterate over
+# that list and produce one package for each generator. In a
+# CPACK_PROJECT_CONFIG_FILE, though, CPACK_GENERATOR is a *string naming
+# a single generator*. If you need per-cpack- generator logic to
+# control *other* cpack settings, then you need a
+# CPACK_PROJECT_CONFIG_FILE.
#
# The CMake source tree itself contains a CPACK_PROJECT_CONFIG_FILE.
# See the top level file CMakeCPackOptions.cmake.in for an example.
#
-# If set, the CPACK_PROJECT_CONFIG_FILE is included automatically
-# on a per-generator basis. It only need contain overrides.
+# If set, the CPACK_PROJECT_CONFIG_FILE is included automatically on a
+# per-generator basis. It only need contain overrides.
#
# Here's how it works:
-# - cpack runs
-# - it includes CPackConfig.cmake
-# - it iterates over the generators listed in that file's
-# CPACK_GENERATOR list variable (unless told to use just a
-# specific one via -G on the command line...)
-#
-# - foreach generator, it then
-# - sets CPACK_GENERATOR to the one currently being iterated
-# - includes the CPACK_PROJECT_CONFIG_FILE
-# - produces the package for that generator
-#
-# This is the key: For each generator listed in CPACK_GENERATOR
-# in CPackConfig.cmake, cpack will *reset* CPACK_GENERATOR
-# internally to *the one currently being used* and then include
-# the CPACK_PROJECT_CONFIG_FILE.
-#
-# Before including this CPack module in your CMakeLists.txt file,
-# there are a variety of variables that can be set to customize
-# the resulting installers. The most commonly-used variables are:
-##end
#
-##variable
-# CPACK_PACKAGE_NAME - The name of the package (or application). If
-# not specified, defaults to the project name.
-##end
+# ::
#
-##variable
-# CPACK_PACKAGE_VENDOR - The name of the package vendor. (e.g.,
-# "Kitware").
-##end
+# - cpack runs
+# - it includes CPackConfig.cmake
+# - it iterates over the generators listed in that file's
+# CPACK_GENERATOR list variable (unless told to use just a
+# specific one via -G on the command line...)
#
-##variable
-# CPACK_PACKAGE_DIRECTORY - The directory in which CPack is doing its
-# packaging. If it is not set then this will default (internally) to the
-# build dir. This variable may be defined in CPack config file or from
-# the cpack command line option "-B". If set the command line option
-# override the value found in the config file.
-##end
#
-##variable
-# CPACK_PACKAGE_VERSION_MAJOR - Package major Version
-##end
#
-##variable
-# CPACK_PACKAGE_VERSION_MINOR - Package minor Version
-##end
+# ::
#
-##variable
-# CPACK_PACKAGE_VERSION_PATCH - Package patch Version
-##end
+# - foreach generator, it then
+# - sets CPACK_GENERATOR to the one currently being iterated
+# - includes the CPACK_PROJECT_CONFIG_FILE
+# - produces the package for that generator
#
-##variable
-# CPACK_PACKAGE_DESCRIPTION_FILE - A text file used to describe the
-# project. Used, for example, the introduction screen of a
-# CPack-generated Windows installer to describe the project.
-##end
#
-##variable
-# CPACK_PACKAGE_DESCRIPTION_SUMMARY - Short description of the
-# project (only a few words).
-##end
#
-##variable
-# CPACK_PACKAGE_FILE_NAME - The name of the package file to generate,
-# not including the extension. For example, cmake-2.6.1-Linux-i686.
-# The default value is
+# This is the key: For each generator listed in CPACK_GENERATOR in
+# CPackConfig.cmake, cpack will *reset* CPACK_GENERATOR internally to
+# *the one currently being used* and then include the
+# CPACK_PROJECT_CONFIG_FILE.
#
-# ${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${CPACK_SYSTEM_NAME}.
-##end
+# Before including this CPack module in your CMakeLists.txt file, there
+# are a variety of variables that can be set to customize the resulting
+# installers. The most commonly-used variables are: #end
#
-##variable
-# CPACK_PACKAGE_INSTALL_DIRECTORY - Installation directory on the
-# target system. This may be used by some CPack generators
-# like NSIS to create an installation directory e.g., "CMake 2.5"
-# below the installation prefix. All installed element will be
-# put inside this directory.
-##end
+# #variable
#
-##variable
-# CPACK_PACKAGE_ICON - A branding image that will be displayed inside
-# the installer (used by GUI installers).
-##end
+# ::
#
-##variable
-# CPACK_PROJECT_CONFIG_FILE - CPack-time project CPack configuration
-# file. This file included at cpack time, once per
-# generator after CPack has set CPACK_GENERATOR to the actual generator
-# being used. It allows per-generator setting of CPACK_* variables at
-# cpack time.
-##end
+# CPACK_PACKAGE_NAME - The name of the package (or application). If
+# not specified, defaults to the project name.
#
-##variable
-# CPACK_RESOURCE_FILE_LICENSE - License to be embedded in the installer. It
-# will typically be displayed to the user by the produced installer
-# (often with an explicit "Accept" button, for graphical installers)
-# prior to installation. This license file is NOT added to installed
-# file but is used by some CPack generators like NSIS. If you want
-# to install a license file (may be the same as this one)
-# along with your project you must add an appropriate CMake INSTALL
-# command in your CMakeLists.txt.
-##end
+# #end
#
-##variable
-# CPACK_RESOURCE_FILE_README - ReadMe file to be embedded in the installer. It
-# typically describes in some detail the purpose of the project
-# during the installation. Not all CPack generators uses
-# this file.
-##end
+# #variable
#
-##variable
-# CPACK_RESOURCE_FILE_WELCOME - Welcome file to be embedded in the
-# installer. It welcomes users to this installer.
-# Typically used in the graphical installers on Windows and Mac OS X.
-##end
+# ::
#
-##variable
-# CPACK_MONOLITHIC_INSTALL - Disables the component-based
-# installation mechanism. When set the component specification is ignored
-# and all installed items are put in a single "MONOLITHIC" package.
-# Some CPack generators do monolithic packaging by default and
-# may be asked to do component packaging by setting
-# CPACK_<GENNAME>_COMPONENT_INSTALL to 1/TRUE.
-##end
+# CPACK_PACKAGE_VENDOR - The name of the package vendor. (e.g.,
+# "Kitware").
#
-##variable
-# CPACK_GENERATOR - List of CPack generators to use. If not
-# specified, CPack will create a set of options CPACK_BINARY_<GENNAME> (e.g.,
-# CPACK_BINARY_NSIS) allowing the user to enable/disable individual
-# generators. This variable may be used on the command line
-# as well as in:
+# #end
#
-# cpack -D CPACK_GENERATOR="ZIP;TGZ" /path/to/build/tree
-##end
+# #variable
#
-##variable
-# CPACK_OUTPUT_CONFIG_FILE - The name of the CPack binary configuration
-# file. This file is the CPack configuration generated by the CPack module
-# for binary installers. Defaults to CPackConfig.cmake.
-##end
+# ::
#
-##variable
-# CPACK_PACKAGE_EXECUTABLES - Lists each of the executables and associated
-# text label to be used to create Start Menu shortcuts. For example,
-# setting this to the list ccmake;CMake will
-# create a shortcut named "CMake" that will execute the installed
-# executable ccmake. Not all CPack generators use it (at least NSIS and
-# OSXX11 do).
-##end
+# CPACK_PACKAGE_DIRECTORY - The directory in which CPack is doing its
+# packaging. If it is not set then this will default (internally) to the
+# build dir. This variable may be defined in CPack config file or from
+# the cpack command line option "-B". If set the command line option
+# override the value found in the config file.
#
-##variable
-# CPACK_STRIP_FILES - List of files to be stripped. Starting with
-# CMake 2.6.0 CPACK_STRIP_FILES will be a boolean variable which
-# enables stripping of all files (a list of files evaluates to TRUE
-# in CMake, so this change is compatible).
-##end
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_PACKAGE_VERSION_MAJOR - Package major Version
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_PACKAGE_VERSION_MINOR - Package minor Version
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_PACKAGE_VERSION_PATCH - Package patch Version
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_PACKAGE_DESCRIPTION_FILE - A text file used to describe the
+# project. Used, for example, the introduction screen of a
+# CPack-generated Windows installer to describe the project.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_PACKAGE_DESCRIPTION_SUMMARY - Short description of the
+# project (only a few words).
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_PACKAGE_FILE_NAME - The name of the package file to generate,
+# not including the extension. For example, cmake-2.6.1-Linux-i686.
+# The default value is
+#
+#
+#
+# ::
+#
+# ${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${CPACK_SYSTEM_NAME}.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_PACKAGE_INSTALL_DIRECTORY - Installation directory on the
+# target system. This may be used by some CPack generators
+# like NSIS to create an installation directory e.g., "CMake 2.5"
+# below the installation prefix. All installed element will be
+# put inside this directory.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_PACKAGE_ICON - A branding image that will be displayed inside
+# the installer (used by GUI installers).
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_PROJECT_CONFIG_FILE - CPack-time project CPack configuration
+# file. This file included at cpack time, once per
+# generator after CPack has set CPACK_GENERATOR to the actual generator
+# being used. It allows per-generator setting of CPACK_* variables at
+# cpack time.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_RESOURCE_FILE_LICENSE - License to be embedded in the installer. It
+# will typically be displayed to the user by the produced installer
+# (often with an explicit "Accept" button, for graphical installers)
+# prior to installation. This license file is NOT added to installed
+# file but is used by some CPack generators like NSIS. If you want
+# to install a license file (may be the same as this one)
+# along with your project you must add an appropriate CMake INSTALL
+# command in your CMakeLists.txt.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_RESOURCE_FILE_README - ReadMe file to be embedded in the installer. It
+# typically describes in some detail the purpose of the project
+# during the installation. Not all CPack generators uses
+# this file.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_RESOURCE_FILE_WELCOME - Welcome file to be embedded in the
+# installer. It welcomes users to this installer.
+# Typically used in the graphical installers on Windows and Mac OS X.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_MONOLITHIC_INSTALL - Disables the component-based
+# installation mechanism. When set the component specification is ignored
+# and all installed items are put in a single "MONOLITHIC" package.
+# Some CPack generators do monolithic packaging by default and
+# may be asked to do component packaging by setting
+# CPACK_<GENNAME>_COMPONENT_INSTALL to 1/TRUE.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_GENERATOR - List of CPack generators to use. If not
+# specified, CPack will create a set of options CPACK_BINARY_<GENNAME> (e.g.,
+# CPACK_BINARY_NSIS) allowing the user to enable/disable individual
+# generators. This variable may be used on the command line
+# as well as in:
+#
+#
+#
+# ::
+#
+# cpack -D CPACK_GENERATOR="ZIP;TGZ" /path/to/build/tree
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_OUTPUT_CONFIG_FILE - The name of the CPack binary configuration
+# file. This file is the CPack configuration generated by the CPack module
+# for binary installers. Defaults to CPackConfig.cmake.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_PACKAGE_EXECUTABLES - Lists each of the executables and associated
+# text label to be used to create Start Menu shortcuts. For example,
+# setting this to the list ccmake;CMake will
+# create a shortcut named "CMake" that will execute the installed
+# executable ccmake. Not all CPack generators use it (at least NSIS and
+# OSXX11 do).
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_STRIP_FILES - List of files to be stripped. Starting with
+# CMake 2.6.0 CPACK_STRIP_FILES will be a boolean variable which
+# enables stripping of all files (a list of files evaluates to TRUE
+# in CMake, so this change is compatible).
+#
+# #end
#
# The following CPack variables are specific to source packages, and
# will not affect binary packages:
#
-##variable
-# CPACK_SOURCE_PACKAGE_FILE_NAME - The name of the source package. For
-# example cmake-2.6.1.
-##end
+# #variable
#
-##variable
-# CPACK_SOURCE_STRIP_FILES - List of files in the source tree that
-# will be stripped. Starting with CMake 2.6.0
-# CPACK_SOURCE_STRIP_FILES will be a boolean variable which enables
-# stripping of all files (a list of files evaluates to TRUE in CMake,
-# so this change is compatible).
-##end
+# ::
#
-##variable
-# CPACK_SOURCE_GENERATOR - List of generators used for the source
-# packages. As with CPACK_GENERATOR, if this is not specified then
-# CPack will create a set of options (e.g., CPACK_SOURCE_ZIP)
-# allowing users to select which packages will be generated.
-##end
+# CPACK_SOURCE_PACKAGE_FILE_NAME - The name of the source package. For
+# example cmake-2.6.1.
#
-##variable
-# CPACK_SOURCE_OUTPUT_CONFIG_FILE - The name of the CPack source
-# configuration file. This file is the CPack configuration generated by the
-# CPack module for source installers. Defaults to CPackSourceConfig.cmake.
-##end
+# #end
#
-##variable
-# CPACK_SOURCE_IGNORE_FILES - Pattern of files in the source tree
-# that won't be packaged when building a source package. This is a
-# list of regular expression patterns (that must be properly escaped),
-# e.g., /CVS/;/\\.svn/;\\.swp$;\\.#;/#;.*~;cscope.*
-##end
+# #variable
+#
+# ::
+#
+# CPACK_SOURCE_STRIP_FILES - List of files in the source tree that
+# will be stripped. Starting with CMake 2.6.0
+# CPACK_SOURCE_STRIP_FILES will be a boolean variable which enables
+# stripping of all files (a list of files evaluates to TRUE in CMake,
+# so this change is compatible).
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_SOURCE_GENERATOR - List of generators used for the source
+# packages. As with CPACK_GENERATOR, if this is not specified then
+# CPack will create a set of options (e.g., CPACK_SOURCE_ZIP)
+# allowing users to select which packages will be generated.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_SOURCE_OUTPUT_CONFIG_FILE - The name of the CPack source
+# configuration file. This file is the CPack configuration generated by the
+# CPack module for source installers. Defaults to CPackSourceConfig.cmake.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_SOURCE_IGNORE_FILES - Pattern of files in the source tree
+# that won't be packaged when building a source package. This is a
+# list of regular expression patterns (that must be properly escaped),
+# e.g., /CVS/;/\\.svn/;\\.swp$;\\.#;/#;.*~;cscope.*
+#
+# #end
#
# The following variables are for advanced uses of CPack:
#
-##variable
-# CPACK_CMAKE_GENERATOR - What CMake generator should be used if the
-# project is CMake project. Defaults to the value of CMAKE_GENERATOR
-# few users will want to change this setting.
-##end
+# #variable
#
-##variable
-# CPACK_INSTALL_CMAKE_PROJECTS - List of four values that specify
-# what project to install. The four values are: Build directory,
-# Project Name, Project Component, Directory. If omitted, CPack will
-# build an installer that installers everything.
-##end
+# ::
#
-##variable
-# CPACK_SYSTEM_NAME - System name, defaults to the value of
-# ${CMAKE_SYSTEM_NAME}.
-##end
+# CPACK_CMAKE_GENERATOR - What CMake generator should be used if the
+# project is CMake project. Defaults to the value of CMAKE_GENERATOR
+# few users will want to change this setting.
#
-##variable
-# CPACK_PACKAGE_VERSION - Package full version, used internally. By
-# default, this is built from CPACK_PACKAGE_VERSION_MAJOR,
-# CPACK_PACKAGE_VERSION_MINOR, and CPACK_PACKAGE_VERSION_PATCH.
-##end
+# #end
#
-##variable
-# CPACK_TOPLEVEL_TAG - Directory for the installed files.
-##end
+# #variable
#
-##variable
-# CPACK_INSTALL_COMMANDS - Extra commands to install components.
-##end
+# ::
#
-##variable
-# CPACK_INSTALLED_DIRECTORIES - Extra directories to install.
-##end
+# CPACK_INSTALL_CMAKE_PROJECTS - List of four values that specify
+# what project to install. The four values are: Build directory,
+# Project Name, Project Component, Directory. If omitted, CPack will
+# build an installer that installers everything.
#
-##variable
-# CPACK_PACKAGE_INSTALL_REGISTRY_KEY - Registry key used when
-# installing this project. This is only used by installer for Windows.
-# The default value is based on the installation directory.
-##end
-##variable
-# CPACK_CREATE_DESKTOP_LINKS - List of desktop links to create.
-##end
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_SYSTEM_NAME - System name, defaults to the value of
+# ${CMAKE_SYSTEM_NAME}.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_PACKAGE_VERSION - Package full version, used internally. By
+# default, this is built from CPACK_PACKAGE_VERSION_MAJOR,
+# CPACK_PACKAGE_VERSION_MINOR, and CPACK_PACKAGE_VERSION_PATCH.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_TOPLEVEL_TAG - Directory for the installed files.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_INSTALL_COMMANDS - Extra commands to install components.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_INSTALLED_DIRECTORIES - Extra directories to install.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_PACKAGE_INSTALL_REGISTRY_KEY - Registry key used when
+# installing this project. This is only used by installer for Windows.
+# The default value is based on the installation directory.
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_CREATE_DESKTOP_LINKS - List of desktop links to create.
#
+# #end
#=============================================================================
# Copyright 2006-2009 Kitware, Inc.
diff --git a/Modules/CPackBundle.cmake b/Modules/CPackBundle.cmake
index 0da51e30b8..00c5fc2396 100644
--- a/Modules/CPackBundle.cmake
+++ b/Modules/CPackBundle.cmake
@@ -1,36 +1,54 @@
-##section Variables specific to CPack Bundle generator
-##end
-##module
-# - CPack Bundle generator (Mac OS X) specific options
+#.rst:
+# CPackBundle
+# -----------
+#
+# CPack Bundle generator (Mac OS X) specific options
+#
+# #section Variables specific to CPack Bundle generator #end #module
#
# Installers built on Mac OS X using the Bundle generator use the
-# aforementioned DragNDrop (CPACK_DMG_xxx) variables, plus
-# the following Bundle-specific parameters (CPACK_BUNDLE_xxx).
-##end
-#
-##variable
-# CPACK_BUNDLE_NAME - The name of the generated bundle. This
-# appears in the OSX finder as the bundle name. Required.
-##end
-#
-##variable
-# CPACK_BUNDLE_PLIST - Path to an OSX plist file that will be used
-# for the generated bundle. This assumes that the caller has generated
-# or specified their own Info.plist file. Required.
-##end
-#
-##variable
-# CPACK_BUNDLE_ICON - Path to an OSX icon file that will be used as
-# the icon for the generated bundle. This is the icon that appears in the
-# OSX finder for the bundle, and in the OSX dock when the bundle is opened.
-# Required.
-##end
-#
-##variable
-# CPACK_BUNDLE_STARTUP_COMMAND - Path to a startup script. This is a path to
-# an executable or script that will be run whenever an end-user double-clicks
-# the generated bundle in the OSX Finder. Optional.
-##end
+# aforementioned DragNDrop (CPACK_DMG_xxx) variables, plus the following
+# Bundle-specific parameters (CPACK_BUNDLE_xxx). #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_BUNDLE_NAME - The name of the generated bundle. This
+# appears in the OSX finder as the bundle name. Required.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_BUNDLE_PLIST - Path to an OSX plist file that will be used
+# for the generated bundle. This assumes that the caller has generated
+# or specified their own Info.plist file. Required.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_BUNDLE_ICON - Path to an OSX icon file that will be used as
+# the icon for the generated bundle. This is the icon that appears in the
+# OSX finder for the bundle, and in the OSX dock when the bundle is opened.
+# Required.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_BUNDLE_STARTUP_COMMAND - Path to a startup script. This is a path to
+# an executable or script that will be run whenever an end-user double-clicks
+# the generated bundle in the OSX Finder. Optional.
+#
+# #end
#=============================================================================
# Copyright 2006-2009 Kitware, Inc.
diff --git a/Modules/CPackComponent.cmake b/Modules/CPackComponent.cmake
index c85cfb4543..4674a7b35d 100644
--- a/Modules/CPackComponent.cmake
+++ b/Modules/CPackComponent.cmake
@@ -1,265 +1,303 @@
-##section Variables concerning CPack Components
-##end
-##module
-# - Build binary and source package installers
+#.rst:
+# CPackComponent
+# --------------
#
-# The CPackComponent module is the module which handles
-# the component part of CPack. See CPack module for
-# general information about CPack.
+# Build binary and source package installers
+#
+# #section Variables concerning CPack Components #end #module
+#
+# The CPackComponent module is the module which handles the component
+# part of CPack. See CPack module for general information about CPack.
#
# For certain kinds of binary installers (including the graphical
# installers on Mac OS X and Windows), CPack generates installers that
-# allow users to select individual application components to
-# install. The contents of each of the components are identified by
-# the COMPONENT argument of CMake's INSTALL command. These components
-# can be annotated with user-friendly names and descriptions,
-# inter-component dependencies, etc., and grouped in various ways to
-# customize the resulting installer. See the cpack_add_* commands,
-# described below, for more information about component-specific
-# installations.
+# allow users to select individual application components to install.
+# The contents of each of the components are identified by the COMPONENT
+# argument of CMake's INSTALL command. These components can be
+# annotated with user-friendly names and descriptions, inter-component
+# dependencies, etc., and grouped in various ways to customize the
+# resulting installer. See the cpack_add_* commands, described below,
+# for more information about component-specific installations.
#
# Component-specific installation allows users to select specific sets
-# of components to install during the install process. Installation
-# components are identified by the COMPONENT argument of CMake's
-# INSTALL commands, and should be further described by the following
-# CPack commands:
-##end
-#
-##variable
-# CPACK_COMPONENTS_ALL - The list of component to install.
-#
-#The default value of this variable is computed by CPack
-#and contains all components defined by the project. The
-#user may set it to only include the specified components.
-##end
-#
-##variable
-# CPACK_<GENNAME>_COMPONENT_INSTALL - Enable/Disable component install for
-# CPack generator <GENNAME>.
-#
-#Each CPack Generator (RPM, DEB, ARCHIVE, NSIS, DMG, etc...) has a legacy
-#default behavior. e.g. RPM builds monolithic whereas NSIS builds component.
-#One can change the default behavior by setting this variable to 0/1 or OFF/ON.
-##end
-##variable
-# CPACK_COMPONENTS_GROUPING - Specify how components are grouped for multi-package
-# component-aware CPack generators.
-#
-#Some generators like RPM or ARCHIVE family (TGZ, ZIP, ...) generates several
-#packages files when asked for component packaging. They group the component
-#differently depending on the value of this variable:
-# - ONE_PER_GROUP (default): creates one package file per component group
-# - ALL_COMPONENTS_IN_ONE : creates a single package with all (requested) component
-# - IGNORE : creates one package per component, i.e. IGNORE component group
-#One can specify different grouping for different CPack generator by using
-#a CPACK_PROJECT_CONFIG_FILE.
-##end
-##variable
-# CPACK_COMPONENT_<compName>_DISPLAY_NAME - The name to be displayed for a component.
-##end
-##variable
-# CPACK_COMPONENT_<compName>_DESCRIPTION - The description of a component.
-##end
-##variable
-# CPACK_COMPONENT_<compName>_GROUP - The group of a component.
-##end
-##variable
-# CPACK_COMPONENT_<compName>_DEPENDS - The dependencies (list of components)
-# on which this component depends.
-##end
-##variable
-# CPACK_COMPONENT_<compName>_REQUIRED - True is this component is required.
-##end
-##macro
-#cpack_add_component - Describes a CPack installation component
-#named by the COMPONENT argument to a CMake INSTALL command.
-#
-# cpack_add_component(compname
-# [DISPLAY_NAME name]
-# [DESCRIPTION description]
-# [HIDDEN | REQUIRED | DISABLED ]
-# [GROUP group]
-# [DEPENDS comp1 comp2 ... ]
-# [INSTALL_TYPES type1 type2 ... ]
-# [DOWNLOADED]
-# [ARCHIVE_FILE filename])
-#
-#The cmake_add_component command describes an installation
-#component, which the user can opt to install or remove as part of
-#the graphical installation process. compname is the name of the
-#component, as provided to the COMPONENT argument of one or more
-#CMake INSTALL commands.
-#
-#DISPLAY_NAME is the displayed name of the component, used in
-#graphical installers to display the component name. This value can
-#be any string.
-#
-#DESCRIPTION is an extended description of the component, used in
-#graphical installers to give the user additional information about
-#the component. Descriptions can span multiple lines using "\n" as
-#the line separator. Typically, these descriptions should be no
-#more than a few lines long.
-#
-#HIDDEN indicates that this component will be hidden in the
-#graphical installer, so that the user cannot directly change
-#whether it is installed or not.
-#
-#REQUIRED indicates that this component is required, and therefore
-#will always be installed. It will be visible in the graphical
-#installer, but it cannot be unselected. (Typically, required
-#components are shown greyed out).
-#
-#DISABLED indicates that this component should be disabled
-#(unselected) by default. The user is free to select this component
-#for installation, unless it is also HIDDEN.
-#
-#DEPENDS lists the components on which this component depends. If
-#this component is selected, then each of the components listed
-#must also be selected. The dependency information is encoded
-#within the installer itself, so that users cannot install
-#inconsistent sets of components.
-#
-#GROUP names the component group of which this component is a
-#part. If not provided, the component will be a standalone
-#component, not part of any component group. Component groups are
-#described with the cpack_add_component_group command, detailed
-#below.
-#
-#INSTALL_TYPES lists the installation types of which this component
-#is a part. When one of these installations types is selected, this
-#component will automatically be selected. Installation types are
-#described with the cpack_add_install_type command, detailed below.
-#
-#DOWNLOADED indicates that this component should be downloaded
-#on-the-fly by the installer, rather than packaged in with the
-#installer itself. For more information, see the cpack_configure_downloads
-# command.
-#
-#ARCHIVE_FILE provides a name for the archive file created by CPack
-#to be used for downloaded components. If not supplied, CPack will
-#create a file with some name based on CPACK_PACKAGE_FILE_NAME and
-#the name of the component. See cpack_configure_downloads for more
-#information.
-##end
-#
-##macro
-#cpack_add_component_group - Describes a group of related CPack
-#installation components.
-#
-# cpack_add_component_group(groupname
-# [DISPLAY_NAME name]
-# [DESCRIPTION description]
-# [PARENT_GROUP parent]
-# [EXPANDED]
-# [BOLD_TITLE])
-#
-#The cpack_add_component_group describes a group of installation
-#components, which will be placed together within the listing of
-#options. Typically, component groups allow the user to
-#select/deselect all of the components within a single group via a
-#single group-level option. Use component groups to reduce the
-#complexity of installers with many options. groupname is an
-#arbitrary name used to identify the group in the GROUP argument of
-#the cpack_add_component command, which is used to place a
-#component in a group. The name of the group must not conflict with
-#the name of any component.
-#
-#DISPLAY_NAME is the displayed name of the component group, used in
-#graphical installers to display the component group name. This
-#value can be any string.
-#
-#DESCRIPTION is an extended description of the component group,
-#used in graphical installers to give the user additional
-#information about the components within that group. Descriptions
-#can span multiple lines using "\n" as the line
-#separator. Typically, these descriptions should be no more than a
-#few lines long.
-#
-#PARENT_GROUP, if supplied, names the parent group of this group.
-#Parent groups are used to establish a hierarchy of groups,
-#providing an arbitrary hierarchy of groups.
-#
-#EXPANDED indicates that, by default, the group should show up as
-#"expanded", so that the user immediately sees all of the
-#components within the group. Otherwise, the group will initially
-#show up as a single entry.
-#
-#BOLD_TITLE indicates that the group title should appear in bold,
-#to call the user's attention to the group.
-##end
-#
-##macro
-#cpack_add_install_type - Add a new installation type containing a
-#set of predefined component selections to the graphical installer.
-#
-# cpack_add_install_type(typename
-# [DISPLAY_NAME name])
-#
-#The cpack_add_install_type command identifies a set of preselected
-#components that represents a common use case for an
-#application. For example, a "Developer" install type might include
-#an application along with its header and library files, while an
-#"End user" install type might just include the application's
-#executable. Each component identifies itself with one or more
-#install types via the INSTALL_TYPES argument to
-#cpack_add_component.
-#
-#DISPLAY_NAME is the displayed name of the install type, which will
-#typically show up in a drop-down box within a graphical
-#installer. This value can be any string.
-##end
-#
-##macro
-#cpack_configure_downloads - Configure CPack to download selected
-#components on-the-fly as part of the installation process.
-#
-# cpack_configure_downloads(site
-# [UPLOAD_DIRECTORY dirname]
-# [ALL]
-# [ADD_REMOVE|NO_ADD_REMOVE])
-#
-#The cpack_configure_downloads command configures installation-time
-#downloads of selected components. For each downloadable component,
-#CPack will create an archive containing the contents of that
-#component, which should be uploaded to the given site. When the
-#user selects that component for installation, the installer will
-#download and extract the component in place. This feature is
-#useful for creating small installers that only download the
-#requested components, saving bandwidth. Additionally, the
-#installers are small enough that they will be installed as part of
-#the normal installation process, and the "Change" button in
-#Windows Add/Remove Programs control panel will allow one to add or
-#remove parts of the application after the original
-#installation. On Windows, the downloaded-components functionality
-#requires the ZipDLL plug-in for NSIS, available at:
-#
-# http://nsis.sourceforge.net/ZipDLL_plug-in
-#
-#On Mac OS X, installers that download components on-the-fly can
-#only be built and installed on system using Mac OS X 10.5 or
-#later.
-#
-#The site argument is a URL where the archives for downloadable
-#components will reside, e.g., http://www.cmake.org/files/2.6.1/installer/
-#All of the archives produced by CPack should be uploaded to that location.
-#
-#UPLOAD_DIRECTORY is the local directory where CPack will create the
-#various archives for each of the components. The contents of this
-#directory should be uploaded to a location accessible by the URL given
-#in the site argument. If omitted, CPack will use the directory
-#CPackUploads inside the CMake binary directory to store the generated
-#archives.
-#
-#The ALL flag indicates that all components be downloaded. Otherwise, only
-#those components explicitly marked as DOWNLOADED or that have a specified
-#ARCHIVE_FILE will be downloaded. Additionally, the ALL option implies
-#ADD_REMOVE (unless NO_ADD_REMOVE is specified).
-#
-#ADD_REMOVE indicates that CPack should install a copy of the installer
-#that can be called from Windows' Add/Remove Programs dialog (via the
-#"Modify" button) to change the set of installed components. NO_ADD_REMOVE
-#turns off this behavior. This option is ignored on Mac OS X.
-##endmacro
+# of components to install during the install process. Installation
+# components are identified by the COMPONENT argument of CMake's INSTALL
+# commands, and should be further described by the following CPack
+# commands: #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_COMPONENTS_ALL - The list of component to install.
+#
+#
+#
+# The default value of this variable is computed by CPack and contains
+# all components defined by the project. The user may set it to only
+# include the specified components. #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_<GENNAME>_COMPONENT_INSTALL - Enable/Disable component install for
+# CPack generator <GENNAME>.
+#
+#
+#
+# Each CPack Generator (RPM, DEB, ARCHIVE, NSIS, DMG, etc...) has a
+# legacy default behavior. e.g. RPM builds monolithic whereas NSIS
+# builds component. One can change the default behavior by setting this
+# variable to 0/1 or OFF/ON. #end #variable
+#
+# ::
+#
+# CPACK_COMPONENTS_GROUPING - Specify how components are grouped for multi-package
+# component-aware CPack generators.
+#
+#
+#
+# Some generators like RPM or ARCHIVE family (TGZ, ZIP, ...) generates
+# several packages files when asked for component packaging. They group
+# the component differently depending on the value of this variable:
+#
+# ::
+#
+# - ONE_PER_GROUP (default): creates one package file per component group
+# - ALL_COMPONENTS_IN_ONE : creates a single package with all (requested) component
+# - IGNORE : creates one package per component, i.e. IGNORE component group
+#
+# One can specify different grouping for different CPack generator by
+# using a CPACK_PROJECT_CONFIG_FILE. #end #variable
+#
+# ::
+#
+# CPACK_COMPONENT_<compName>_DISPLAY_NAME - The name to be displayed for a component.
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_COMPONENT_<compName>_DESCRIPTION - The description of a component.
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_COMPONENT_<compName>_GROUP - The group of a component.
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_COMPONENT_<compName>_DEPENDS - The dependencies (list of components)
+# on which this component depends.
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_COMPONENT_<compName>_REQUIRED - True is this component is required.
+#
+# #end #macro cpack_add_component - Describes a CPack installation
+# component named by the COMPONENT argument to a CMake INSTALL command.
+#
+# ::
+#
+# cpack_add_component(compname
+# [DISPLAY_NAME name]
+# [DESCRIPTION description]
+# [HIDDEN | REQUIRED | DISABLED ]
+# [GROUP group]
+# [DEPENDS comp1 comp2 ... ]
+# [INSTALL_TYPES type1 type2 ... ]
+# [DOWNLOADED]
+# [ARCHIVE_FILE filename])
+#
+#
+#
+# The cmake_add_component command describes an installation component,
+# which the user can opt to install or remove as part of the graphical
+# installation process. compname is the name of the component, as
+# provided to the COMPONENT argument of one or more CMake INSTALL
+# commands.
+#
+# DISPLAY_NAME is the displayed name of the component, used in graphical
+# installers to display the component name. This value can be any
+# string.
+#
+# DESCRIPTION is an extended description of the component, used in
+# graphical installers to give the user additional information about the
+# component. Descriptions can span multiple lines using "\n" as the
+# line separator. Typically, these descriptions should be no more than
+# a few lines long.
+#
+# HIDDEN indicates that this component will be hidden in the graphical
+# installer, so that the user cannot directly change whether it is
+# installed or not.
+#
+# REQUIRED indicates that this component is required, and therefore will
+# always be installed. It will be visible in the graphical installer,
+# but it cannot be unselected. (Typically, required components are
+# shown greyed out).
+#
+# DISABLED indicates that this component should be disabled (unselected)
+# by default. The user is free to select this component for
+# installation, unless it is also HIDDEN.
+#
+# DEPENDS lists the components on which this component depends. If this
+# component is selected, then each of the components listed must also be
+# selected. The dependency information is encoded within the installer
+# itself, so that users cannot install inconsistent sets of components.
+#
+# GROUP names the component group of which this component is a part. If
+# not provided, the component will be a standalone component, not part
+# of any component group. Component groups are described with the
+# cpack_add_component_group command, detailed below.
+#
+# INSTALL_TYPES lists the installation types of which this component is
+# a part. When one of these installations types is selected, this
+# component will automatically be selected. Installation types are
+# described with the cpack_add_install_type command, detailed below.
+#
+# DOWNLOADED indicates that this component should be downloaded
+# on-the-fly by the installer, rather than packaged in with the
+# installer itself. For more information, see the
+# cpack_configure_downloads command.
+#
+# ARCHIVE_FILE provides a name for the archive file created by CPack to
+# be used for downloaded components. If not supplied, CPack will create
+# a file with some name based on CPACK_PACKAGE_FILE_NAME and the name of
+# the component. See cpack_configure_downloads for more information.
+# #end
+#
+# #macro cpack_add_component_group - Describes a group of related CPack
+# installation components.
+#
+# ::
+#
+# cpack_add_component_group(groupname
+# [DISPLAY_NAME name]
+# [DESCRIPTION description]
+# [PARENT_GROUP parent]
+# [EXPANDED]
+# [BOLD_TITLE])
+#
+#
+#
+# The cpack_add_component_group describes a group of installation
+# components, which will be placed together within the listing of
+# options. Typically, component groups allow the user to
+# select/deselect all of the components within a single group via a
+# single group-level option. Use component groups to reduce the
+# complexity of installers with many options. groupname is an arbitrary
+# name used to identify the group in the GROUP argument of the
+# cpack_add_component command, which is used to place a component in a
+# group. The name of the group must not conflict with the name of any
+# component.
+#
+# DISPLAY_NAME is the displayed name of the component group, used in
+# graphical installers to display the component group name. This value
+# can be any string.
+#
+# DESCRIPTION is an extended description of the component group, used in
+# graphical installers to give the user additional information about the
+# components within that group. Descriptions can span multiple lines
+# using "\n" as the line separator. Typically, these descriptions
+# should be no more than a few lines long.
+#
+# PARENT_GROUP, if supplied, names the parent group of this group.
+# Parent groups are used to establish a hierarchy of groups, providing
+# an arbitrary hierarchy of groups.
+#
+# EXPANDED indicates that, by default, the group should show up as
+# "expanded", so that the user immediately sees all of the components
+# within the group. Otherwise, the group will initially show up as a
+# single entry.
+#
+# BOLD_TITLE indicates that the group title should appear in bold, to
+# call the user's attention to the group. #end
+#
+# #macro cpack_add_install_type - Add a new installation type containing
+# a set of predefined component selections to the graphical installer.
+#
+# ::
+#
+# cpack_add_install_type(typename
+# [DISPLAY_NAME name])
+#
+#
+#
+# The cpack_add_install_type command identifies a set of preselected
+# components that represents a common use case for an application. For
+# example, a "Developer" install type might include an application along
+# with its header and library files, while an "End user" install type
+# might just include the application's executable. Each component
+# identifies itself with one or more install types via the INSTALL_TYPES
+# argument to cpack_add_component.
+#
+# DISPLAY_NAME is the displayed name of the install type, which will
+# typically show up in a drop-down box within a graphical installer.
+# This value can be any string. #end
+#
+# #macro cpack_configure_downloads - Configure CPack to download
+# selected components on-the-fly as part of the installation process.
+#
+# ::
+#
+# cpack_configure_downloads(site
+# [UPLOAD_DIRECTORY dirname]
+# [ALL]
+# [ADD_REMOVE|NO_ADD_REMOVE])
+#
+#
+#
+# The cpack_configure_downloads command configures installation-time
+# downloads of selected components. For each downloadable component,
+# CPack will create an archive containing the contents of that
+# component, which should be uploaded to the given site. When the user
+# selects that component for installation, the installer will download
+# and extract the component in place. This feature is useful for
+# creating small installers that only download the requested components,
+# saving bandwidth. Additionally, the installers are small enough that
+# they will be installed as part of the normal installation process, and
+# the "Change" button in Windows Add/Remove Programs control panel will
+# allow one to add or remove parts of the application after the original
+# installation. On Windows, the downloaded-components functionality
+# requires the ZipDLL plug-in for NSIS, available at:
+#
+# ::
+#
+# http://nsis.sourceforge.net/ZipDLL_plug-in
+#
+#
+#
+# On Mac OS X, installers that download components on-the-fly can only
+# be built and installed on system using Mac OS X 10.5 or later.
+#
+# The site argument is a URL where the archives for downloadable
+# components will reside, e.g.,
+# http://www.cmake.org/files/2.6.1/installer/ All of the archives
+# produced by CPack should be uploaded to that location.
+#
+# UPLOAD_DIRECTORY is the local directory where CPack will create the
+# various archives for each of the components. The contents of this
+# directory should be uploaded to a location accessible by the URL given
+# in the site argument. If omitted, CPack will use the directory
+# CPackUploads inside the CMake binary directory to store the generated
+# archives.
+#
+# The ALL flag indicates that all components be downloaded. Otherwise,
+# only those components explicitly marked as DOWNLOADED or that have a
+# specified ARCHIVE_FILE will be downloaded. Additionally, the ALL
+# option implies ADD_REMOVE (unless NO_ADD_REMOVE is specified).
+#
+# ADD_REMOVE indicates that CPack should install a copy of the installer
+# that can be called from Windows' Add/Remove Programs dialog (via the
+# "Modify" button) to change the set of installed components.
+# NO_ADD_REMOVE turns off this behavior. This option is ignored on Mac
+# OS X. #endmacro
#=============================================================================
# Copyright 2006-2009 Kitware, Inc.
diff --git a/Modules/CPackCygwin.cmake b/Modules/CPackCygwin.cmake
index 7ed7f678bd..f3eb0761dd 100644
--- a/Modules/CPackCygwin.cmake
+++ b/Modules/CPackCygwin.cmake
@@ -1,23 +1,35 @@
-##section Variables specific to CPack Cygwin generator
-##end
-##module
-# - Cygwin CPack generator (Cygwin).
-# The following variable is specific to installers build on
-# and/or for Cygwin:
-##end
-#
-##variable
-# CPACK_CYGWIN_PATCH_NUMBER - The Cygwin patch number.
-# FIXME: This documentation is incomplete.
-##end
-##variable
-# CPACK_CYGWIN_PATCH_FILE - The Cygwin patch file.
-# FIXME: This documentation is incomplete.
-##end
-##variable
-# CPACK_CYGWIN_BUILD_SCRIPT - The Cygwin build script.
-# FIXME: This documentation is incomplete.
-##end
+#.rst:
+# CPackCygwin
+# -----------
+#
+# Cygwin CPack generator (Cygwin).
+#
+# #section Variables specific to CPack Cygwin generator #end #module The
+# following variable is specific to installers build on and/or for
+# Cygwin: #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_CYGWIN_PATCH_NUMBER - The Cygwin patch number.
+# FIXME: This documentation is incomplete.
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_CYGWIN_PATCH_FILE - The Cygwin patch file.
+# FIXME: This documentation is incomplete.
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_CYGWIN_BUILD_SCRIPT - The Cygwin build script.
+# FIXME: This documentation is incomplete.
+#
+# #end
#=============================================================================
# Copyright 2006-2012 Kitware, Inc.
diff --git a/Modules/CPackDMG.cmake b/Modules/CPackDMG.cmake
index e866bab80f..2f5eea4ebc 100644
--- a/Modules/CPackDMG.cmake
+++ b/Modules/CPackDMG.cmake
@@ -1,60 +1,90 @@
-##section Variables specific to CPack DragNDrop generator
-##end
-##module
-# - DragNDrop CPack generator (Mac OS X).
-# The following variables are specific to the DragNDrop installers
-# built on Mac OS X:
-##end
-#
-##variable
-# CPACK_DMG_VOLUME_NAME - The volume name of the generated disk
-# image. Defaults to CPACK_PACKAGE_FILE_NAME.
-##end
-#
-##variable
-# CPACK_DMG_FORMAT - The disk image format. Common values are UDRO
-# (UDIF read-only), UDZO (UDIF zlib-compressed) or UDBZ (UDIF
-# bzip2-compressed). Refer to hdiutil(1) for more information on
-# other available formats.
-##end
-#
-##variable
-# CPACK_DMG_DS_STORE - Path to a custom DS_Store file. This .DS_Store
-# file e.g. can be used to specify the Finder window
-# position/geometry and layout (such as hidden toolbars, placement of the
-# icons etc.). This file has to be generated by the Finder (either manually or
-# through OSA-script) using a normal folder from which the .DS_Store
-# file can then be extracted.
-##end
-#
-##variable
-# CPACK_DMG_BACKGROUND_IMAGE - Path to a background image file. This
-# file will be used as the background for the Finder Window when the disk
-# image is opened. By default no background image is set. The background
-# image is applied after applying the custom .DS_Store file.
-##end
-#
-##variable
-# CPACK_COMMAND_HDIUTIL - Path to the hdiutil(1) command used to
-# operate on disk image files on Mac OS X. This variable can be used
-# to override the automatically detected command (or specify its
-# location if the auto-detection fails to find it.)
-##end
-#
-##variable
-# CPACK_COMMAND_SETFILE - Path to the SetFile(1) command used to set
-# extended attributes on files and directories on Mac OS X. This
-# variable can be used to override the automatically detected
-# command (or specify its location if the auto-detection fails to
-# find it.)
-##end
-#
-##variable
-# CPACK_COMMAND_REZ - Path to the Rez(1) command used to compile
-# resources on Mac OS X. This variable can be used to override the
-# automatically detected command (or specify its location if the
-# auto-detection fails to find it.)
-##end
+#.rst:
+# CPackDMG
+# --------
+#
+# DragNDrop CPack generator (Mac OS X).
+#
+# #section Variables specific to CPack DragNDrop generator #end #module
+# The following variables are specific to the DragNDrop installers built
+# on Mac OS X: #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_DMG_VOLUME_NAME - The volume name of the generated disk
+# image. Defaults to CPACK_PACKAGE_FILE_NAME.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_DMG_FORMAT - The disk image format. Common values are UDRO
+# (UDIF read-only), UDZO (UDIF zlib-compressed) or UDBZ (UDIF
+# bzip2-compressed). Refer to hdiutil(1) for more information on
+# other available formats.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_DMG_DS_STORE - Path to a custom DS_Store file. This .DS_Store
+# file e.g. can be used to specify the Finder window
+# position/geometry and layout (such as hidden toolbars, placement of the
+# icons etc.). This file has to be generated by the Finder (either manually or
+# through OSA-script) using a normal folder from which the .DS_Store
+# file can then be extracted.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_DMG_BACKGROUND_IMAGE - Path to a background image file. This
+# file will be used as the background for the Finder Window when the disk
+# image is opened. By default no background image is set. The background
+# image is applied after applying the custom .DS_Store file.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_COMMAND_HDIUTIL - Path to the hdiutil(1) command used to
+# operate on disk image files on Mac OS X. This variable can be used
+# to override the automatically detected command (or specify its
+# location if the auto-detection fails to find it.)
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_COMMAND_SETFILE - Path to the SetFile(1) command used to set
+# extended attributes on files and directories on Mac OS X. This
+# variable can be used to override the automatically detected
+# command (or specify its location if the auto-detection fails to
+# find it.)
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_COMMAND_REZ - Path to the Rez(1) command used to compile
+# resources on Mac OS X. This variable can be used to override the
+# automatically detected command (or specify its location if the
+# auto-detection fails to find it.)
+#
+# #end
#=============================================================================
# Copyright 2006-2012 Kitware, Inc.
diff --git a/Modules/CPackDeb.cmake b/Modules/CPackDeb.cmake
index 75ff3bef17..9194dc659c 100644
--- a/Modules/CPackDeb.cmake
+++ b/Modules/CPackDeb.cmake
@@ -1,169 +1,216 @@
-##section Variables specific to CPack Debian (DEB) generator
-##end
-##module
-# - The builtin (binary) CPack Deb generator (Unix only)
-# CPackDeb may be used to create Deb package using CPack.
+#.rst:
+# CPackDeb
+# --------
+#
+# The builtin (binary) CPack Deb generator (Unix only)
+#
+# #section Variables specific to CPack Debian (DEB) generator #end
+# #module CPackDeb may be used to create Deb package using CPack.
# CPackDeb is a CPack generator thus it uses the CPACK_XXX variables
# used by CPack : http://www.cmake.org/Wiki/CMake:CPackConfiguration.
-# CPackDeb generator should work on any linux host but it will
-# produce better deb package when Debian specific tools 'dpkg-xxx'
-# are usable on the build system.
-#
-# CPackDeb has specific features which are controlled by
-# the specifics CPACK_DEBIAN_XXX variables.You'll find a detailed usage on
-# the wiki:
-# http://www.cmake.org/Wiki/CMake:CPackPackageGenerators#DEB_.28UNIX_only.29
+# CPackDeb generator should work on any linux host but it will produce
+# better deb package when Debian specific tools 'dpkg-xxx' are usable on
+# the build system.
+#
+# CPackDeb has specific features which are controlled by the specifics
+# CPACK_DEBIAN_XXX variables.You'll find a detailed usage on the wiki:
+#
+# ::
+#
+# http://www.cmake.org/Wiki/CMake:CPackPackageGenerators#DEB_.28UNIX_only.29
+#
# However as a handy reminder here comes the list of specific variables:
-##end
-#
-##variable
-# CPACK_DEBIAN_PACKAGE_NAME
-# Mandatory : YES
-# Default : CPACK_PACKAGE_NAME (lower case)
-# The debian package summary
-##end
-##variable
-# CPACK_DEBIAN_PACKAGE_VERSION
-# Mandatory : YES
-# Default : CPACK_PACKAGE_VERSION
-# The debian package version
-##end
-##variable
-# CPACK_DEBIAN_PACKAGE_ARCHITECTURE
-# Mandatory : YES
-# Default : Output of dpkg --print-architecture (or i386 if dpkg is not found)
-# The debian package architecture
-##end
-##variable
-# CPACK_DEBIAN_PACKAGE_DEPENDS
-# Mandatory : NO
-# Default : -
-# May be used to set deb dependencies.
-##end
-##variable
-# CPACK_DEBIAN_PACKAGE_MAINTAINER
-# Mandatory : YES
-# Default : CPACK_PACKAGE_CONTACT
-# The debian package maintainer
-##end
-##variable
-# CPACK_DEBIAN_PACKAGE_DESCRIPTION
-# Mandatory : YES
-# Default : CPACK_PACKAGE_DESCRIPTION_SUMMARY
-# The debian package description
-##end
-##variable
-# CPACK_DEBIAN_PACKAGE_SECTION
-# Mandatory : YES
-# Default : 'devel'
-# The debian package section
-##end
-##variable
-# CPACK_DEBIAN_PACKAGE_PRIORITY
-# Mandatory : YES
-# Default : 'optional'
-# The debian package priority
-##end
-##variable
-# CPACK_DEBIAN_PACKAGE_HOMEPAGE
-# Mandatory : NO
-# Default : -
-# The URL of the web site for this package, preferably (when applicable) the
-# site from which the original source can be obtained and any additional
-# upstream documentation or information may be found.
-# The content of this field is a simple URL without any surrounding
-# characters such as <>.
-##end
-##variable
-# CPACK_DEBIAN_PACKAGE_SHLIBDEPS
-# Mandatory : NO
-# Default : OFF
-# May be set to ON in order to use dpkg-shlibdeps to generate
-# better package dependency list.
-# You may need set CMAKE_INSTALL_RPATH toi appropriate value
-# if you use this feature, because if you don't dpkg-shlibdeps
-# may fail to find your own shared libs.
-# See http://www.cmake.org/Wiki/CMake_RPATH_handling.
-##end
-##variable
-# CPACK_DEBIAN_PACKAGE_DEBUG
-# Mandatory : NO
-# Default : -
-# May be set when invoking cpack in order to trace debug information
-# during CPackDeb run.
-##end
-##variable
-# CPACK_DEBIAN_PACKAGE_PREDEPENDS
-# Mandatory : NO
-# Default : -
-# see http://www.debian.org/doc/debian-policy/ch-relationships.html#s-binarydeps
-# This field is like Depends, except that it also forces dpkg to complete installation of
-# the packages named before even starting the installation of the package which declares
-# the pre-dependency.
-##end
-##variable
-# CPACK_DEBIAN_PACKAGE_ENHANCES
-# Mandatory : NO
-# Default : -
-# see http://www.debian.org/doc/debian-policy/ch-relationships.html#s-binarydeps
-# This field is similar to Suggests but works in the opposite direction.
-# It is used to declare that a package can enhance the functionality of another package.
-##end
-##variable
-# CPACK_DEBIAN_PACKAGE_BREAKS
-# Mandatory : NO
-# Default : -
-# see http://www.debian.org/doc/debian-policy/ch-relationships.html#s-binarydeps
-# When one binary package declares that it breaks another, dpkg will refuse to allow the
-# package which declares Breaks be installed unless the broken package is deconfigured first,
-# and it will refuse to allow the broken package to be reconfigured.
-##end
-##variable
-# CPACK_DEBIAN_PACKAGE_CONFLICTS
-# Mandatory : NO
-# Default : -
-# see http://www.debian.org/doc/debian-policy/ch-relationships.html#s-binarydeps
-# When one binary package declares a conflict with another using a Conflicts field,
-# dpkg will refuse to allow them to be installed on the system at the same time.
-##end
-##variable
-# CPACK_DEBIAN_PACKAGE_PROVIDES
-# Mandatory : NO
-# Default : -
-# see http://www.debian.org/doc/debian-policy/ch-relationships.html#s-binarydeps
-# A virtual package is one which appears in the Provides control field of another package.
-##end
-##variable
-# CPACK_DEBIAN_PACKAGE_REPLACES
-# Mandatory : NO
-# Default : -
-# see http://www.debian.org/doc/debian-policy/ch-relationships.html#s-binarydeps
-# Packages can declare in their control file that they should overwrite
-# files in certain other packages, or completely replace other packages.
-##end
-##variable
-# CPACK_DEBIAN_PACKAGE_RECOMMENDS
-# Mandatory : NO
-# Default : -
-# see http://www.debian.org/doc/debian-policy/ch-relationships.html#s-binarydeps
-# Allows packages to declare a strong, but not absolute, dependency on other packages.
-##end
-##variable
-# CPACK_DEBIAN_PACKAGE_SUGGESTS
-# Mandatory : NO
-# Default : -
-# see http://www.debian.org/doc/debian-policy/ch-relationships.html#s-binarydeps
-# Allows packages to declare a suggested package install grouping.
-##end
-##variable
-# CPACK_DEBIAN_PACKAGE_CONTROL_EXTRA
-# Mandatory : NO
-# Default : -
-# This variable allow advanced user to add custom script to the control.tar.gz
-# Typical usage is for conffiles, postinst, postrm, prerm.
-# Usage: set(CPACK_DEBIAN_PACKAGE_CONTROL_EXTRA
-# "${CMAKE_CURRENT_SOURCE_DIR/prerm;${CMAKE_CURRENT_SOURCE_DIR}/postrm")
-##end
+# #end
+#
+# #variable CPACK_DEBIAN_PACKAGE_NAME
+#
+# ::
+#
+# Mandatory : YES
+# Default : CPACK_PACKAGE_NAME (lower case)
+# The debian package summary
+#
+# #end #variable CPACK_DEBIAN_PACKAGE_VERSION
+#
+# ::
+#
+# Mandatory : YES
+# Default : CPACK_PACKAGE_VERSION
+# The debian package version
+#
+# #end #variable CPACK_DEBIAN_PACKAGE_ARCHITECTURE
+#
+# ::
+#
+# Mandatory : YES
+# Default : Output of dpkg --print-architecture (or i386 if dpkg is not found)
+# The debian package architecture
+#
+# #end #variable CPACK_DEBIAN_PACKAGE_DEPENDS
+#
+# ::
+#
+# Mandatory : NO
+# Default : -
+# May be used to set deb dependencies.
+#
+# #end #variable CPACK_DEBIAN_PACKAGE_MAINTAINER
+#
+# ::
+#
+# Mandatory : YES
+# Default : CPACK_PACKAGE_CONTACT
+# The debian package maintainer
+#
+# #end #variable CPACK_DEBIAN_PACKAGE_DESCRIPTION
+#
+# ::
+#
+# Mandatory : YES
+# Default : CPACK_PACKAGE_DESCRIPTION_SUMMARY
+# The debian package description
+#
+# #end #variable CPACK_DEBIAN_PACKAGE_SECTION
+#
+# ::
+#
+# Mandatory : YES
+# Default : 'devel'
+# The debian package section
+#
+# #end #variable CPACK_DEBIAN_PACKAGE_PRIORITY
+#
+# ::
+#
+# Mandatory : YES
+# Default : 'optional'
+# The debian package priority
+#
+# #end #variable CPACK_DEBIAN_PACKAGE_HOMEPAGE
+#
+# ::
+#
+# Mandatory : NO
+# Default : -
+# The URL of the web site for this package, preferably (when applicable) the
+# site from which the original source can be obtained and any additional
+# upstream documentation or information may be found.
+# The content of this field is a simple URL without any surrounding
+# characters such as <>.
+#
+# #end #variable CPACK_DEBIAN_PACKAGE_SHLIBDEPS
+#
+# ::
+#
+# Mandatory : NO
+# Default : OFF
+# May be set to ON in order to use dpkg-shlibdeps to generate
+# better package dependency list.
+# You may need set CMAKE_INSTALL_RPATH toi appropriate value
+# if you use this feature, because if you don't dpkg-shlibdeps
+# may fail to find your own shared libs.
+# See http://www.cmake.org/Wiki/CMake_RPATH_handling.
+#
+# #end #variable CPACK_DEBIAN_PACKAGE_DEBUG
+#
+# ::
+#
+# Mandatory : NO
+# Default : -
+# May be set when invoking cpack in order to trace debug information
+# during CPackDeb run.
+#
+# #end #variable CPACK_DEBIAN_PACKAGE_PREDEPENDS
+#
+# ::
+#
+# Mandatory : NO
+# Default : -
+# see http://www.debian.org/doc/debian-policy/ch-relationships.html#s-binarydeps
+# This field is like Depends, except that it also forces dpkg to complete installation of
+# the packages named before even starting the installation of the package which declares
+# the pre-dependency.
+#
+# #end #variable CPACK_DEBIAN_PACKAGE_ENHANCES
+#
+# ::
+#
+# Mandatory : NO
+# Default : -
+# see http://www.debian.org/doc/debian-policy/ch-relationships.html#s-binarydeps
+# This field is similar to Suggests but works in the opposite direction.
+# It is used to declare that a package can enhance the functionality of another package.
+#
+# #end #variable CPACK_DEBIAN_PACKAGE_BREAKS
+#
+# ::
+#
+# Mandatory : NO
+# Default : -
+# see http://www.debian.org/doc/debian-policy/ch-relationships.html#s-binarydeps
+# When one binary package declares that it breaks another, dpkg will refuse to allow the
+# package which declares Breaks be installed unless the broken package is deconfigured first,
+# and it will refuse to allow the broken package to be reconfigured.
+#
+# #end #variable CPACK_DEBIAN_PACKAGE_CONFLICTS
+#
+# ::
+#
+# Mandatory : NO
+# Default : -
+# see http://www.debian.org/doc/debian-policy/ch-relationships.html#s-binarydeps
+# When one binary package declares a conflict with another using a Conflicts field,
+# dpkg will refuse to allow them to be installed on the system at the same time.
+#
+# #end #variable CPACK_DEBIAN_PACKAGE_PROVIDES
+#
+# ::
+#
+# Mandatory : NO
+# Default : -
+# see http://www.debian.org/doc/debian-policy/ch-relationships.html#s-binarydeps
+# A virtual package is one which appears in the Provides control field of another package.
+#
+# #end #variable CPACK_DEBIAN_PACKAGE_REPLACES
+#
+# ::
+#
+# Mandatory : NO
+# Default : -
+# see http://www.debian.org/doc/debian-policy/ch-relationships.html#s-binarydeps
+# Packages can declare in their control file that they should overwrite
+# files in certain other packages, or completely replace other packages.
+#
+# #end #variable CPACK_DEBIAN_PACKAGE_RECOMMENDS
+#
+# ::
+#
+# Mandatory : NO
+# Default : -
+# see http://www.debian.org/doc/debian-policy/ch-relationships.html#s-binarydeps
+# Allows packages to declare a strong, but not absolute, dependency on other packages.
+#
+# #end #variable CPACK_DEBIAN_PACKAGE_SUGGESTS
+#
+# ::
+#
+# Mandatory : NO
+# Default : -
+# see http://www.debian.org/doc/debian-policy/ch-relationships.html#s-binarydeps
+# Allows packages to declare a suggested package install grouping.
+#
+# #end #variable CPACK_DEBIAN_PACKAGE_CONTROL_EXTRA
+#
+# ::
+#
+# Mandatory : NO
+# Default : -
+# This variable allow advanced user to add custom script to the control.tar.gz
+# Typical usage is for conffiles, postinst, postrm, prerm.
+# Usage: set(CPACK_DEBIAN_PACKAGE_CONTROL_EXTRA
+# "${CMAKE_CURRENT_SOURCE_DIR/prerm;${CMAKE_CURRENT_SOURCE_DIR}/postrm")
+#
+# #end
#=============================================================================
diff --git a/Modules/CPackNSIS.cmake b/Modules/CPackNSIS.cmake
index d140053697..717bf92d18 100644
--- a/Modules/CPackNSIS.cmake
+++ b/Modules/CPackNSIS.cmake
@@ -1,134 +1,219 @@
-##section Variables specific to CPack NSIS generator
-##end
-##module
-# - CPack NSIS generator specific options
+#.rst:
+# CPackNSIS
+# ---------
+#
+# CPack NSIS generator specific options
+#
+# #section Variables specific to CPack NSIS generator #end #module
#
# The following variables are specific to the graphical installers built
-# on Windows using the Nullsoft Installation System.
-##end
-#
-##variable
-# CPACK_NSIS_INSTALL_ROOT - The default installation directory presented
-# to the end user by the NSIS installer is under this root dir. The full
-# directory presented to the end user is:
-# ${CPACK_NSIS_INSTALL_ROOT}/${CPACK_PACKAGE_INSTALL_DIRECTORY}
-##end
-#
-##variable
-# CPACK_NSIS_MUI_ICON - An icon filename.
-# The name of a *.ico file used as the main icon for the generated
-# install program.
-##end
-#
-##variable
-# CPACK_NSIS_MUI_UNIICON - An icon filename.
-# The name of a *.ico file used as the main icon for the generated
-# uninstall program.
-##end
-#
-##variable
-# CPACK_NSIS_INSTALLER_MUI_ICON_CODE - undocumented.
-##end
-#
-##variable
-# CPACK_NSIS_EXTRA_PREINSTALL_COMMANDS - Extra NSIS commands that
-# will be added to the beginning of the install Section, before your
-# install tree is available on the target system.
-##end
-#
-##variable
-# CPACK_NSIS_EXTRA_INSTALL_COMMANDS - Extra NSIS commands that
-# will be added to the end of the install Section, after your
-# install tree is available on the target system.
-##end
-#
-##variable
-# CPACK_NSIS_EXTRA_UNINSTALL_COMMANDS - Extra NSIS commands that will
-# be added to the uninstall Section, before your install tree is
-# removed from the target system.
-##end
-#
-##variable
-# CPACK_NSIS_COMPRESSOR - The arguments that will be passed to the
-# NSIS SetCompressor command.
-##end
-#
-##variable
-# CPACK_NSIS_ENABLE_UNINSTALL_BEFORE_INSTALL - Ask about uninstalling
-# previous versions first.
-# If this is set to "ON", then an installer will look for previous
-# installed versions and if one is found, ask the user whether to
-# uninstall it before proceeding with the install.
-##end
-#
-##variable
-# CPACK_NSIS_MODIFY_PATH - Modify PATH toggle.
-# If this is set to "ON", then an extra page
-# will appear in the installer that will allow the user to choose
-# whether the program directory should be added to the system PATH
-# variable.
-##end
-#
-##variable
-# CPACK_NSIS_DISPLAY_NAME - The display name string that appears in
-# the Windows Add/Remove Program control panel
-##end
-#
-##variable
-# CPACK_NSIS_PACKAGE_NAME - The title displayed at the top of the
-# installer.
-##end
-#
-##variable
-# CPACK_NSIS_INSTALLED_ICON_NAME - A path to the executable that
-# contains the installer icon.
-##end
-#
-##variable
-# CPACK_NSIS_HELP_LINK - URL to a web site providing assistance in
-# installing your application.
-##end
-#
-##variable
-# CPACK_NSIS_URL_INFO_ABOUT - URL to a web site providing more
-# information about your application.
-##end
-#
-##variable
-# CPACK_NSIS_CONTACT - Contact information for questions and comments
-# about the installation process.
-##end
-#
-##variable
-# CPACK_NSIS_CREATE_ICONS_EXTRA - Additional NSIS commands for
-# creating start menu shortcuts.
-##end
-#
-##variable
-# CPACK_NSIS_DELETE_ICONS_EXTRA -Additional NSIS commands to
-# uninstall start menu shortcuts.
-##end
-#
-##variable
-# CPACK_NSIS_EXECUTABLES_DIRECTORY - Creating NSIS start menu links
-# assumes that they are in 'bin' unless this variable is set.
-# For example, you would set this to 'exec' if your executables are
-# in an exec directory.
-##end
-#
-##variable
-# CPACK_NSIS_MUI_FINISHPAGE_RUN - Specify an executable to add an option
-# to run on the finish page of the NSIS installer.
-##end
-##variable
-# CPACK_NSIS_MENU_LINKS - Specify links in [application] menu.
-# This should contain a list of pair "link" "link name". The link
-# may be an URL or a path relative to installation prefix.
-# Like:
-# set(CPACK_NSIS_MENU_LINKS
-# "doc/cmake-@CMake_VERSION_MAJOR@.@CMake_VERSION_MINOR@/cmake.html" "CMake Help"
-# "http://www.cmake.org" "CMake Web Site")
-##end
+# on Windows using the Nullsoft Installation System. #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_NSIS_INSTALL_ROOT - The default installation directory presented
+# to the end user by the NSIS installer is under this root dir. The full
+# directory presented to the end user is:
+# ${CPACK_NSIS_INSTALL_ROOT}/${CPACK_PACKAGE_INSTALL_DIRECTORY}
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_NSIS_MUI_ICON - An icon filename.
+# The name of a *.ico file used as the main icon for the generated
+# install program.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_NSIS_MUI_UNIICON - An icon filename.
+# The name of a *.ico file used as the main icon for the generated
+# uninstall program.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_NSIS_INSTALLER_MUI_ICON_CODE - undocumented.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_NSIS_EXTRA_PREINSTALL_COMMANDS - Extra NSIS commands that
+# will be added to the beginning of the install Section, before your
+# install tree is available on the target system.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_NSIS_EXTRA_INSTALL_COMMANDS - Extra NSIS commands that
+# will be added to the end of the install Section, after your
+# install tree is available on the target system.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_NSIS_EXTRA_UNINSTALL_COMMANDS - Extra NSIS commands that will
+# be added to the uninstall Section, before your install tree is
+# removed from the target system.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_NSIS_COMPRESSOR - The arguments that will be passed to the
+# NSIS SetCompressor command.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_NSIS_ENABLE_UNINSTALL_BEFORE_INSTALL - Ask about uninstalling
+# previous versions first.
+# If this is set to "ON", then an installer will look for previous
+# installed versions and if one is found, ask the user whether to
+# uninstall it before proceeding with the install.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_NSIS_MODIFY_PATH - Modify PATH toggle.
+# If this is set to "ON", then an extra page
+# will appear in the installer that will allow the user to choose
+# whether the program directory should be added to the system PATH
+# variable.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_NSIS_DISPLAY_NAME - The display name string that appears in
+# the Windows Add/Remove Program control panel
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_NSIS_PACKAGE_NAME - The title displayed at the top of the
+# installer.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_NSIS_INSTALLED_ICON_NAME - A path to the executable that
+# contains the installer icon.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_NSIS_HELP_LINK - URL to a web site providing assistance in
+# installing your application.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_NSIS_URL_INFO_ABOUT - URL to a web site providing more
+# information about your application.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_NSIS_CONTACT - Contact information for questions and comments
+# about the installation process.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_NSIS_CREATE_ICONS_EXTRA - Additional NSIS commands for
+# creating start menu shortcuts.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_NSIS_DELETE_ICONS_EXTRA -Additional NSIS commands to
+# uninstall start menu shortcuts.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_NSIS_EXECUTABLES_DIRECTORY - Creating NSIS start menu links
+# assumes that they are in 'bin' unless this variable is set.
+# For example, you would set this to 'exec' if your executables are
+# in an exec directory.
+#
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_NSIS_MUI_FINISHPAGE_RUN - Specify an executable to add an option
+# to run on the finish page of the NSIS installer.
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_NSIS_MENU_LINKS - Specify links in [application] menu.
+# This should contain a list of pair "link" "link name". The link
+# may be an URL or a path relative to installation prefix.
+# Like:
+# set(CPACK_NSIS_MENU_LINKS
+# "doc/cmake-@CMake_VERSION_MAJOR@.@CMake_VERSION_MINOR@/cmake.html" "CMake Help"
+# "http://www.cmake.org" "CMake Web Site")
+#
+# #end
#=============================================================================
# Copyright 2006-2009 Kitware, Inc.
diff --git a/Modules/CPackPackageMaker.cmake b/Modules/CPackPackageMaker.cmake
index 98ca9e2d5d..689d34cfd7 100644
--- a/Modules/CPackPackageMaker.cmake
+++ b/Modules/CPackPackageMaker.cmake
@@ -1,25 +1,31 @@
-##section Variables specific to CPack PackageMaker generator
-##end
-##module
-# - PackageMaker CPack generator (Mac OS X).
-# The following variable is specific to installers built on Mac OS X
-# using PackageMaker:
-##end
-#
-##variable
-# CPACK_OSX_PACKAGE_VERSION - The version of Mac OS X that the
-# resulting PackageMaker archive should be compatible with. Different
-# versions of Mac OS X support different
-# features. For example, CPack can only build component-based
-# installers for Mac OS X 10.4 or newer, and can only build
-# installers that download component son-the-fly for Mac OS X 10.5
-# or newer. If left blank, this value will be set to the minimum
-# version of Mac OS X that supports the requested features. Set this
-# variable to some value (e.g., 10.4) only if you want to guarantee
-# that your installer will work on that version of Mac OS X, and
-# don't mind missing extra features available in the installer
-# shipping with later versions of Mac OS X.
-##end
+#.rst:
+# CPackPackageMaker
+# -----------------
+#
+# PackageMaker CPack generator (Mac OS X).
+#
+# #section Variables specific to CPack PackageMaker generator #end
+# #module The following variable is specific to installers built on Mac
+# OS X using PackageMaker: #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_OSX_PACKAGE_VERSION - The version of Mac OS X that the
+# resulting PackageMaker archive should be compatible with. Different
+# versions of Mac OS X support different
+# features. For example, CPack can only build component-based
+# installers for Mac OS X 10.4 or newer, and can only build
+# installers that download component son-the-fly for Mac OS X 10.5
+# or newer. If left blank, this value will be set to the minimum
+# version of Mac OS X that supports the requested features. Set this
+# variable to some value (e.g., 10.4) only if you want to guarantee
+# that your installer will work on that version of Mac OS X, and
+# don't mind missing extra features available in the installer
+# shipping with later versions of Mac OS X.
+#
+# #end
#=============================================================================
# Copyright 2006-2012 Kitware, Inc.
diff --git a/Modules/CPackRPM.cmake b/Modules/CPackRPM.cmake
index bf5b5bc624..f8303ab212 100644
--- a/Modules/CPackRPM.cmake
+++ b/Modules/CPackRPM.cmake
@@ -1,248 +1,337 @@
-##section Variables specific to CPack RPM generator
-##end
-##module
-# - The builtin (binary) CPack RPM generator (Unix only)
-# CPackRPM may be used to create RPM package using CPack.
-# CPackRPM is a CPack generator thus it uses the CPACK_XXX variables
-# used by CPack : http://www.cmake.org/Wiki/CMake:CPackConfiguration
-#
-# However CPackRPM has specific features which are controlled by
-# the specifics CPACK_RPM_XXX variables. CPackRPM is a component aware
+#.rst:
+# CPackRPM
+# --------
+#
+# The builtin (binary) CPack RPM generator (Unix only)
+#
+# #section Variables specific to CPack RPM generator #end #module
+# CPackRPM may be used to create RPM package using CPack. CPackRPM is a
+# CPack generator thus it uses the CPACK_XXX variables used by CPack :
+# http://www.cmake.org/Wiki/CMake:CPackConfiguration
+#
+# However CPackRPM has specific features which are controlled by the
+# specifics CPACK_RPM_XXX variables. CPackRPM is a component aware
# generator so when CPACK_RPM_COMPONENT_INSTALL is ON some more
-# CPACK_RPM_<ComponentName>_XXXX variables may be used in order
-# to have component specific values. Note however that <componentName>
-# refers to the **grouping name**. This may be either a component name
-# or a component GROUP name.
-# Usually those vars correspond to RPM spec file entities, one may find
-# information about spec files here http://www.rpm.org/wiki/Docs.
-# You'll find a detailed usage of CPackRPM on the wiki:
-# http://www.cmake.org/Wiki/CMake:CPackPackageGenerators#RPM_.28Unix_Only.29
+# CPACK_RPM_<ComponentName>_XXXX variables may be used in order to have
+# component specific values. Note however that <componentName> refers
+# to the **grouping name**. This may be either a component name or a
+# component GROUP name. Usually those vars correspond to RPM spec file
+# entities, one may find information about spec files here
+# http://www.rpm.org/wiki/Docs. You'll find a detailed usage of
+# CPackRPM on the wiki:
+#
+# ::
+#
+# http://www.cmake.org/Wiki/CMake:CPackPackageGenerators#RPM_.28Unix_Only.29
+#
# However as a handy reminder here comes the list of specific variables:
-##end
-#
-##variable
-# CPACK_RPM_PACKAGE_SUMMARY - The RPM package summary.
-# Mandatory : YES
-# Default : CPACK_PACKAGE_DESCRIPTION_SUMMARY
-##end
-##variable
-# CPACK_RPM_PACKAGE_NAME - The RPM package name.
-# Mandatory : YES
-# Default : CPACK_PACKAGE_NAME
-##end
-##variable
-# CPACK_RPM_PACKAGE_VERSION - The RPM package version.
-# Mandatory : YES
-# Default : CPACK_PACKAGE_VERSION
-##end
-##variable
-# CPACK_RPM_PACKAGE_ARCHITECTURE - The RPM package architecture.
-# Mandatory : NO
-# Default : -
-# This may be set to "noarch" if you
-# know you are building a noarch package.
-##end
-##variable
-# CPACK_RPM_PACKAGE_RELEASE - The RPM package release.
-# Mandatory : YES
-# Default : 1
-# This is the numbering of the RPM package
-# itself, i.e. the version of the packaging and not the version of the
-# content (see CPACK_RPM_PACKAGE_VERSION). One may change the default
-# value if the previous packaging was buggy and/or you want to put here
-# a fancy Linux distro specific numbering.
-##end
-##variable
-# CPACK_RPM_PACKAGE_LICENSE - The RPM package license policy.
-# Mandatory : YES
-# Default : "unknown"
-##end
-##variable
-# CPACK_RPM_PACKAGE_GROUP - The RPM package group.
-# Mandatory : YES
-# Default : "unknown"
-##end
-##variable
-# CPACK_RPM_PACKAGE_VENDOR - The RPM package vendor.
-# Mandatory : YES
-# Default : CPACK_PACKAGE_VENDOR if set or "unknown"
-##end
-##variable
-# CPACK_RPM_PACKAGE_URL - The projects URL.
-# Mandatory : NO
-# Default : -
-##end
-##variable
-# CPACK_RPM_PACKAGE_DESCRIPTION - RPM package description.
-# Mandatory : YES
-# Default : CPACK_PACKAGE_DESCRIPTION_FILE if set or "no package description available"
-##end
-##variable
-# CPACK_RPM_COMPRESSION_TYPE - RPM compression type.
-# Mandatory : NO
-# Default : -
-# May be used to override RPM compression type to be used
-# to build the RPM. For example some Linux distribution now default
-# to lzma or xz compression whereas older cannot use such RPM.
-# Using this one can enforce compression type to be used.
-# Possible value are: lzma, xz, bzip2 and gzip.
-##end
-##variable
-# CPACK_RPM_PACKAGE_REQUIRES - RPM spec requires field.
-# Mandatory : NO
-# Default : -
-# May be used to set RPM dependencies (requires).
-# Note that you must enclose the complete requires string between quotes,
-# for example:
-# set(CPACK_RPM_PACKAGE_REQUIRES "python >= 2.5.0, cmake >= 2.8")
-# The required package list of an RPM file could be printed with
-# rpm -qp --requires file.rpm
-##end
-##variable
-# CPACK_RPM_PACKAGE_SUGGESTS - RPM spec suggest field.
-# Mandatory : NO
-# Default : -
-# May be used to set weak RPM dependencies (suggests).
-# Note that you must enclose the complete requires string between quotes.
-##end
-##variable
-# CPACK_RPM_PACKAGE_PROVIDES - RPM spec provides field.
-# Mandatory : NO
-# Default : -
-# May be used to set RPM dependencies (provides).
-# The provided package list of an RPM file could be printed with
-# rpm -qp --provides file.rpm
-##end
-##variable
-# CPACK_RPM_PACKAGE_OBSOLETES - RPM spec obsoletes field.
-# Mandatory : NO
-# Default : -
-# May be used to set RPM packages that are obsoleted by this one.
-##end
-##variable
-# CPACK_RPM_PACKAGE_RELOCATABLE - build a relocatable RPM.
-# Mandatory : NO
-# Default : CPACK_PACKAGE_RELOCATABLE
-# If this variable is set to TRUE or ON CPackRPM will try
-# to build a relocatable RPM package. A relocatable RPM may
-# be installed using rpm --prefix or --relocate in order to
-# install it at an alternate place see rpm(8).
-# Note that currently this may fail if CPACK_SET_DESTDIR is set to ON.
-# If CPACK_SET_DESTDIR is set then you will get a warning message
-# but if there is file installed with absolute path you'll get
-# unexpected behavior.
-##end
-##variable
-# CPACK_RPM_SPEC_INSTALL_POST - [deprecated].
-# Mandatory : NO
-# Default : -
-# This way of specifying post-install script is deprecated use
-# CPACK_RPM_POST_INSTALL_SCRIPT_FILE
-# May be used to set an RPM post-install command inside the spec file.
-# For example setting it to "/bin/true" may be used to prevent
-# rpmbuild to strip binaries.
-##end
-##variable
-# CPACK_RPM_SPEC_MORE_DEFINE - RPM extended spec definitions lines.
-# Mandatory : NO
-# Default : -
-# May be used to add any %define lines to the generated spec file.
-##end
-##variable
-# CPACK_RPM_PACKAGE_DEBUG - Toggle CPackRPM debug output.
-# Mandatory : NO
-# Default : -
-# May be set when invoking cpack in order to trace debug information
-# during CPack RPM run. For example you may launch CPack like this
-# cpack -D CPACK_RPM_PACKAGE_DEBUG=1 -G RPM
-##end
-##variable
-# CPACK_RPM_USER_BINARY_SPECFILE - A user provided spec file.
-# Mandatory : NO
-# Default : -
-# May be set by the user in order to specify a USER binary spec file
-# to be used by CPackRPM instead of generating the file.
-# The specified file will be processed by configure_file( @ONLY).
-# One can provide a component specific file by setting
-# CPACK_RPM_<componentName>_USER_BINARY_SPECFILE.
-##end
-##variable
-# CPACK_RPM_GENERATE_USER_BINARY_SPECFILE_TEMPLATE - Spec file template.
-# Mandatory : NO
-# Default : -
-# If set CPack will generate a template for USER specified binary
-# spec file and stop with an error. For example launch CPack like this
-# cpack -D CPACK_RPM_GENERATE_USER_BINARY_SPECFILE_TEMPLATE=1 -G RPM
-# The user may then use this file in order to hand-craft is own
-# binary spec file which may be used with CPACK_RPM_USER_BINARY_SPECFILE.
-##end
-##variable
-# CPACK_RPM_PRE_INSTALL_SCRIPT_FILE
-# CPACK_RPM_PRE_UNINSTALL_SCRIPT_FILE
-# Mandatory : NO
-# Default : -
-# May be used to embed a pre (un)installation script in the spec file.
-# The refered script file(s) will be read and directly
-# put after the %pre or %preun section
-# If CPACK_RPM_COMPONENT_INSTALL is set to ON the (un)install script for
-# each component can be overridden with
-# CPACK_RPM_<COMPONENT>_PRE_INSTALL_SCRIPT_FILE and
-# CPACK_RPM_<COMPONENT>_PRE_UNINSTALL_SCRIPT_FILE
-# One may verify which scriptlet has been included with
-# rpm -qp --scripts package.rpm
-##end
-##variable
-# CPACK_RPM_POST_INSTALL_SCRIPT_FILE
-# CPACK_RPM_POST_UNINSTALL_SCRIPT_FILE
-# Mandatory : NO
-# Default : -
-# May be used to embed a post (un)installation script in the spec file.
-# The refered script file(s) will be read and directly
-# put after the %post or %postun section
-# If CPACK_RPM_COMPONENT_INSTALL is set to ON the (un)install script for
-# each component can be overridden with
-# CPACK_RPM_<COMPONENT>_POST_INSTALL_SCRIPT_FILE and
-# CPACK_RPM_<COMPONENT>_POST_UNINSTALL_SCRIPT_FILE
-# One may verify which scriptlet has been included with
-# rpm -qp --scripts package.rpm
-##end
-##variable
-# CPACK_RPM_USER_FILELIST
-# CPACK_RPM_<COMPONENT>_USER_FILELIST
-# Mandatory : NO
-# Default : -
-# May be used to explicitly specify %(<directive>) file line
-# in the spec file. Like %config(noreplace) or any other directive
-# that be found in the %files section. Since CPackRPM is generating
-# the list of files (and directories) the user specified files of
-# the CPACK_RPM_<COMPONENT>_USER_FILELIST list will be removed from the generated list.
-##end
-##variable
-# CPACK_RPM_CHANGELOG_FILE - RPM changelog file.
-# Mandatory : NO
-# Default : -
-# May be used to embed a changelog in the spec file.
-# The refered file will be read and directly put after the %changelog
-# section.
-##end
-##variable
-# CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST - list of path to be excluded.
-# Mandatory : NO
-# Default : /etc /etc/init.d /usr /usr/share /usr/share/doc /usr/bin /usr/lib /usr/lib64 /usr/include
-# May be used to exclude path (directories or files) from the auto-generated
-# list of paths discovered by CPack RPM. The defaut value contains a reasonable
-# set of values if the variable is not defined by the user. If the variable
-# is defined by the user then CPackRPM will NOT any of the default path.
-# If you want to add some path to the default list then you can use
-# CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION variable.
-##end
-##variable
-# CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION - additional list of path to be excluded.
-# Mandatory : NO
-# Default : -
-# May be used to add more exclude path (directories or files) from the initial
-# default list of excluded paths. See CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST.
-##end
+# #end
+#
+# #variable
+#
+# ::
+#
+# CPACK_RPM_PACKAGE_SUMMARY - The RPM package summary.
+# Mandatory : YES
+# Default : CPACK_PACKAGE_DESCRIPTION_SUMMARY
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_RPM_PACKAGE_NAME - The RPM package name.
+# Mandatory : YES
+# Default : CPACK_PACKAGE_NAME
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_RPM_PACKAGE_VERSION - The RPM package version.
+# Mandatory : YES
+# Default : CPACK_PACKAGE_VERSION
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_RPM_PACKAGE_ARCHITECTURE - The RPM package architecture.
+# Mandatory : NO
+# Default : -
+# This may be set to "noarch" if you
+# know you are building a noarch package.
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_RPM_PACKAGE_RELEASE - The RPM package release.
+# Mandatory : YES
+# Default : 1
+# This is the numbering of the RPM package
+# itself, i.e. the version of the packaging and not the version of the
+# content (see CPACK_RPM_PACKAGE_VERSION). One may change the default
+# value if the previous packaging was buggy and/or you want to put here
+# a fancy Linux distro specific numbering.
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_RPM_PACKAGE_LICENSE - The RPM package license policy.
+# Mandatory : YES
+# Default : "unknown"
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_RPM_PACKAGE_GROUP - The RPM package group.
+# Mandatory : YES
+# Default : "unknown"
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_RPM_PACKAGE_VENDOR - The RPM package vendor.
+# Mandatory : YES
+# Default : CPACK_PACKAGE_VENDOR if set or "unknown"
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_RPM_PACKAGE_URL - The projects URL.
+# Mandatory : NO
+# Default : -
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_RPM_PACKAGE_DESCRIPTION - RPM package description.
+# Mandatory : YES
+# Default : CPACK_PACKAGE_DESCRIPTION_FILE if set or "no package description available"
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_RPM_COMPRESSION_TYPE - RPM compression type.
+# Mandatory : NO
+# Default : -
+# May be used to override RPM compression type to be used
+# to build the RPM. For example some Linux distribution now default
+# to lzma or xz compression whereas older cannot use such RPM.
+# Using this one can enforce compression type to be used.
+# Possible value are: lzma, xz, bzip2 and gzip.
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_RPM_PACKAGE_REQUIRES - RPM spec requires field.
+# Mandatory : NO
+# Default : -
+# May be used to set RPM dependencies (requires).
+# Note that you must enclose the complete requires string between quotes,
+# for example:
+# set(CPACK_RPM_PACKAGE_REQUIRES "python >= 2.5.0, cmake >= 2.8")
+# The required package list of an RPM file could be printed with
+# rpm -qp --requires file.rpm
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_RPM_PACKAGE_SUGGESTS - RPM spec suggest field.
+# Mandatory : NO
+# Default : -
+# May be used to set weak RPM dependencies (suggests).
+# Note that you must enclose the complete requires string between quotes.
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_RPM_PACKAGE_PROVIDES - RPM spec provides field.
+# Mandatory : NO
+# Default : -
+# May be used to set RPM dependencies (provides).
+# The provided package list of an RPM file could be printed with
+# rpm -qp --provides file.rpm
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_RPM_PACKAGE_OBSOLETES - RPM spec obsoletes field.
+# Mandatory : NO
+# Default : -
+# May be used to set RPM packages that are obsoleted by this one.
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_RPM_PACKAGE_RELOCATABLE - build a relocatable RPM.
+# Mandatory : NO
+# Default : CPACK_PACKAGE_RELOCATABLE
+# If this variable is set to TRUE or ON CPackRPM will try
+# to build a relocatable RPM package. A relocatable RPM may
+# be installed using rpm --prefix or --relocate in order to
+# install it at an alternate place see rpm(8).
+# Note that currently this may fail if CPACK_SET_DESTDIR is set to ON.
+# If CPACK_SET_DESTDIR is set then you will get a warning message
+# but if there is file installed with absolute path you'll get
+# unexpected behavior.
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_RPM_SPEC_INSTALL_POST - [deprecated].
+# Mandatory : NO
+# Default : -
+# This way of specifying post-install script is deprecated use
+# CPACK_RPM_POST_INSTALL_SCRIPT_FILE
+# May be used to set an RPM post-install command inside the spec file.
+# For example setting it to "/bin/true" may be used to prevent
+# rpmbuild to strip binaries.
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_RPM_SPEC_MORE_DEFINE - RPM extended spec definitions lines.
+# Mandatory : NO
+# Default : -
+# May be used to add any %define lines to the generated spec file.
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_RPM_PACKAGE_DEBUG - Toggle CPackRPM debug output.
+# Mandatory : NO
+# Default : -
+# May be set when invoking cpack in order to trace debug information
+# during CPack RPM run. For example you may launch CPack like this
+# cpack -D CPACK_RPM_PACKAGE_DEBUG=1 -G RPM
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_RPM_USER_BINARY_SPECFILE - A user provided spec file.
+# Mandatory : NO
+# Default : -
+# May be set by the user in order to specify a USER binary spec file
+# to be used by CPackRPM instead of generating the file.
+# The specified file will be processed by configure_file( @ONLY).
+# One can provide a component specific file by setting
+# CPACK_RPM_<componentName>_USER_BINARY_SPECFILE.
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_RPM_GENERATE_USER_BINARY_SPECFILE_TEMPLATE - Spec file template.
+# Mandatory : NO
+# Default : -
+# If set CPack will generate a template for USER specified binary
+# spec file and stop with an error. For example launch CPack like this
+# cpack -D CPACK_RPM_GENERATE_USER_BINARY_SPECFILE_TEMPLATE=1 -G RPM
+# The user may then use this file in order to hand-craft is own
+# binary spec file which may be used with CPACK_RPM_USER_BINARY_SPECFILE.
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_RPM_PRE_INSTALL_SCRIPT_FILE
+# CPACK_RPM_PRE_UNINSTALL_SCRIPT_FILE
+# Mandatory : NO
+# Default : -
+# May be used to embed a pre (un)installation script in the spec file.
+# The refered script file(s) will be read and directly
+# put after the %pre or %preun section
+# If CPACK_RPM_COMPONENT_INSTALL is set to ON the (un)install script for
+# each component can be overridden with
+# CPACK_RPM_<COMPONENT>_PRE_INSTALL_SCRIPT_FILE and
+# CPACK_RPM_<COMPONENT>_PRE_UNINSTALL_SCRIPT_FILE
+# One may verify which scriptlet has been included with
+# rpm -qp --scripts package.rpm
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_RPM_POST_INSTALL_SCRIPT_FILE
+# CPACK_RPM_POST_UNINSTALL_SCRIPT_FILE
+# Mandatory : NO
+# Default : -
+# May be used to embed a post (un)installation script in the spec file.
+# The refered script file(s) will be read and directly
+# put after the %post or %postun section
+# If CPACK_RPM_COMPONENT_INSTALL is set to ON the (un)install script for
+# each component can be overridden with
+# CPACK_RPM_<COMPONENT>_POST_INSTALL_SCRIPT_FILE and
+# CPACK_RPM_<COMPONENT>_POST_UNINSTALL_SCRIPT_FILE
+# One may verify which scriptlet has been included with
+# rpm -qp --scripts package.rpm
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_RPM_USER_FILELIST
+# CPACK_RPM_<COMPONENT>_USER_FILELIST
+# Mandatory : NO
+# Default : -
+# May be used to explicitly specify %(<directive>) file line
+# in the spec file. Like %config(noreplace) or any other directive
+# that be found in the %files section. Since CPackRPM is generating
+# the list of files (and directories) the user specified files of
+# the CPACK_RPM_<COMPONENT>_USER_FILELIST list will be removed from the generated list.
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_RPM_CHANGELOG_FILE - RPM changelog file.
+# Mandatory : NO
+# Default : -
+# May be used to embed a changelog in the spec file.
+# The refered file will be read and directly put after the %changelog
+# section.
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST - list of path to be excluded.
+# Mandatory : NO
+# Default : /etc /etc/init.d /usr /usr/share /usr/share/doc /usr/bin /usr/lib /usr/lib64 /usr/include
+# May be used to exclude path (directories or files) from the auto-generated
+# list of paths discovered by CPack RPM. The defaut value contains a reasonable
+# set of values if the variable is not defined by the user. If the variable
+# is defined by the user then CPackRPM will NOT any of the default path.
+# If you want to add some path to the default list then you can use
+# CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION variable.
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION - additional list of path to be excluded.
+# Mandatory : NO
+# Default : -
+# May be used to add more exclude path (directories or files) from the initial
+# default list of excluded paths. See CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST.
+#
+# #end
#=============================================================================
# Copyright 2007-2009 Kitware, Inc.
diff --git a/Modules/CPackWIX.cmake b/Modules/CPackWIX.cmake
index 604eb370ca..2634f5f04b 100644
--- a/Modules/CPackWIX.cmake
+++ b/Modules/CPackWIX.cmake
@@ -1,121 +1,138 @@
-##section Variables specific to CPack WiX generator
-##end
-##module
-# - CPack WiX generator specific options
+#.rst:
+# CPackWIX
+# --------
+#
+# CPack WiX generator specific options
+#
+# #section Variables specific to CPack WiX generator #end #module
+#
+# The following variables are specific to the installers built on
+# Windows using WiX. #end #variable
+#
+# ::
+#
+# CPACK_WIX_UPGRADE_GUID - Upgrade GUID (Product/@UpgradeCode)
+#
#
-# The following variables are specific to the installers built
-# on Windows using WiX.
-##end
-##variable
-# CPACK_WIX_UPGRADE_GUID - Upgrade GUID (Product/@UpgradeCode)
#
# Will be automatically generated unless explicitly provided.
#
-# It should be explicitly set to a constant generated
-# gloabally unique identifier (GUID) to allow your installers
-# to replace existing installations that use the same GUID.
+# It should be explicitly set to a constant generated gloabally unique
+# identifier (GUID) to allow your installers to replace existing
+# installations that use the same GUID.
#
-# You may for example explicitly set this variable in
-# your CMakeLists.txt to the value that has been generated per default.
-# You should not use GUIDs that you did not generate yourself or which may
+# You may for example explicitly set this variable in your
+# CMakeLists.txt to the value that has been generated per default. You
+# should not use GUIDs that you did not generate yourself or which may
# belong to other projects.
#
# A GUID shall have the following fixed length syntax:
# XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
-# (each X represents an uppercase hexadecimal digit)
-##end
-##variable
-# CPACK_WIX_PRODUCT_GUID - Product GUID (Product/@Id)
+#
+# ::
+#
+# (each X represents an uppercase hexadecimal digit)
+#
+# #end #variable
+#
+# ::
+#
+# CPACK_WIX_PRODUCT_GUID - Product GUID (Product/@Id)
+#
+#
#
# Will be automatically generated unless explicitly provided.
#
# If explicitly provided this will set the Product Id of your installer.
#
-# The installer will abort if it detects a pre-existing installation that uses
-# the same GUID.
+# The installer will abort if it detects a pre-existing installation
+# that uses the same GUID.
#
# The GUID shall use the syntax described for CPACK_WIX_UPGRADE_GUID.
-##end
-##variable
-# CPACK_WIX_LICENSE_RTF - RTF License File
+# #end #variable
+#
+# ::
+#
+# CPACK_WIX_LICENSE_RTF - RTF License File
+#
+#
#
-# If CPACK_RESOURCE_FILE_LICENSE has an .rtf extension
-# it is used as-is.
+# If CPACK_RESOURCE_FILE_LICENSE has an .rtf extension it is used as-is.
#
-# If CPACK_RESOURCE_FILE_LICENSE has an .txt extension
-# it is implicitly converted to RTF by the WiX Generator.
+# If CPACK_RESOURCE_FILE_LICENSE has an .txt extension it is implicitly
+# converted to RTF by the WiX Generator.
#
-# With CPACK_WIX_LICENSE_RTF you can override the license file used
-# by the WiX Generator in case CPACK_RESOURCE_FILE_LICENSE
-# is in an unsupported format or the .txt -> .rtf
-# conversion does not work as expected.
+# With CPACK_WIX_LICENSE_RTF you can override the license file used by
+# the WiX Generator in case CPACK_RESOURCE_FILE_LICENSE is in an
+# unsupported format or the .txt -> .rtf conversion does not work as
+# expected.
#
-##end
+# #end
#
-##variable
-# CPACK_WIX_PRODUCT_ICON - The Icon shown next to the program name in Add/Remove programs.
+# #variable CPACK_WIX_PRODUCT_ICON - The Icon shown next to the program
+# name in Add/Remove programs.
#
# If set, this icon is used in place of the default icon.
#
-##end
+# #end
#
-##variable
-# CPACK_WIX_UI_BANNER - The bitmap will appear at the top of all installer pages other than the welcome and completion dialogs.
+# #variable CPACK_WIX_UI_BANNER - The bitmap will appear at the top of
+# all installer pages other than the welcome and completion dialogs.
#
# If set, this image will replace the default banner image.
#
# This image must be 493 by 58 pixels.
#
-##end
+# #end
#
-##variable
-# CPACK_WIX_UI_DIALOG - Background bitmap used on the welcome and completion dialogs.
+# #variable CPACK_WIX_UI_DIALOG - Background bitmap used on the welcome
+# and completion dialogs.
#
-# If this variable is set, the installer will replace the default dialog image.
+# If this variable is set, the installer will replace the default dialog
+# image.
#
# This image must be 493 by 312 pixels.
#
-##end
+# #end
#
-##variable
-# CPACK_WIX_PROGRAM_MENU_FOLDER - Start menu folder name for launcher.
+# #variable CPACK_WIX_PROGRAM_MENU_FOLDER - Start menu folder name for
+# launcher.
#
-# If this variable is not set, it will be initialized with CPACK_PACKAGE_NAME
+# If this variable is not set, it will be initialized with
+# CPACK_PACKAGE_NAME
#
-##end
-##variable
-# CPACK_WIX_CULTURES - Language(s) of the installer
+# #end #variable CPACK_WIX_CULTURES - Language(s) of the installer
#
-# Languages are compiled into the WixUI extension library. To use them,
+# Languages are compiled into the WixUI extension library. To use them,
# simply provide the name of the culture. If you specify more than one
-# culture identifier in a comma or semicolon delimited list, the first one
-# that is found will be used. You can find a list of supported languages at:
+# culture identifier in a comma or semicolon delimited list, the first
+# one that is found will be used. You can find a list of supported
+# languages at:
# http://wix.sourceforge.net/manual-wix3/WixUI_localization.htm
#
-##end
-##variable
-# CPACK_WIX_TEMPLATE - Template file for WiX generation
+# #end #variable CPACK_WIX_TEMPLATE - Template file for WiX generation
#
-# If this variable is set, the specified template will be used to generate the WiX wxs file.
-# This should be used if further customization of the output is required.
+# If this variable is set, the specified template will be used to
+# generate the WiX wxs file. This should be used if further
+# customization of the output is required.
#
-# If this variable is not set, the default MSI template included with CMake will be used.
+# If this variable is not set, the default MSI template included with
+# CMake will be used.
#
-##end
-##variable
-# CPACK_WIX_EXTRA_SOURCES - Extra WiX source files
+# #end #variable CPACK_WIX_EXTRA_SOURCES - Extra WiX source files
#
-# This variable provides an optional list of extra WiX source files (.wxs)
-# that should be compiled and linked. The full path to source files is required.
+# This variable provides an optional list of extra WiX source files
+# (.wxs) that should be compiled and linked. The full path to source
+# files is required.
#
-##end
-##variable
-# CPACK_WIX_EXTRA_OBJECTS - Extra WiX object files or libraries
+# #end #variable CPACK_WIX_EXTRA_OBJECTS - Extra WiX object files or
+# libraries
#
-# This variable provides an optional list of extra WiX object (.wixobj) and/or
-# WiX library (.wixlib) files. The full path to objects and libraries is required.
+# This variable provides an optional list of extra WiX object (.wixobj)
+# and/or WiX library (.wixlib) files. The full path to objects and
+# libraries is required.
#
-##end
+# #end
#=============================================================================
# Copyright 2012 Kitware, Inc.
diff --git a/Modules/CTest.cmake b/Modules/CTest.cmake
index 5cd62f607b..643cd293db 100644
--- a/Modules/CTest.cmake
+++ b/Modules/CTest.cmake
@@ -1,49 +1,68 @@
-# - Configure a project for testing with CTest/CDash
+#.rst:
+# CTest
+# -----
+#
+# Configure a project for testing with CTest/CDash
+#
# Include this module in the top CMakeLists.txt file of a project to
# enable testing with CTest and dashboard submissions to CDash:
-# project(MyProject)
-# ...
-# include(CTest)
+#
+# ::
+#
+# project(MyProject)
+# ...
+# include(CTest)
+#
# The module automatically creates a BUILD_TESTING option that selects
# whether to enable testing support (ON by default). After including
# the module, use code like
-# if(BUILD_TESTING)
-# # ... CMake code to create tests ...
-# endif()
+#
+# ::
+#
+# if(BUILD_TESTING)
+# # ... CMake code to create tests ...
+# endif()
+#
# to creating tests when testing is enabled.
#
# To enable submissions to a CDash server, create a CTestConfig.cmake
# file at the top of the project with content such as
-# set(CTEST_PROJECT_NAME "MyProject")
-# set(CTEST_NIGHTLY_START_TIME "01:00:00 UTC")
-# set(CTEST_DROP_METHOD "http")
-# set(CTEST_DROP_SITE "my.cdash.org")
-# set(CTEST_DROP_LOCATION "/submit.php?project=MyProject")
-# set(CTEST_DROP_SITE_CDASH TRUE)
-# (the CDash server can provide the file to a project administrator
-# who configures 'MyProject').
-# Settings in the config file are shared by both this CTest module and
-# the CTest command-line tool's dashboard script mode (ctest -S).
+#
+# ::
+#
+# set(CTEST_PROJECT_NAME "MyProject")
+# set(CTEST_NIGHTLY_START_TIME "01:00:00 UTC")
+# set(CTEST_DROP_METHOD "http")
+# set(CTEST_DROP_SITE "my.cdash.org")
+# set(CTEST_DROP_LOCATION "/submit.php?project=MyProject")
+# set(CTEST_DROP_SITE_CDASH TRUE)
+#
+# (the CDash server can provide the file to a project administrator who
+# configures 'MyProject'). Settings in the config file are shared by
+# both this CTest module and the CTest command-line tool's dashboard
+# script mode (ctest -S).
#
# While building a project for submission to CDash, CTest scans the
-# build output for errors and warnings and reports them with
-# surrounding context from the build log. This generic approach works
-# for all build tools, but does not give details about the command
-# invocation that produced a given problem. One may get more detailed
-# reports by adding
-# set(CTEST_USE_LAUNCHERS 1)
-# to the CTestConfig.cmake file. When this option is enabled, the
-# CTest module tells CMake's Makefile generators to invoke every
-# command in the generated build system through a CTest launcher
-# program. (Currently the CTEST_USE_LAUNCHERS option is ignored on
-# non-Makefile generators.) During a manual build each launcher
-# transparently runs the command it wraps. During a CTest-driven
-# build for submission to CDash each launcher reports detailed
-# information when its command fails or warns.
-# (Setting CTEST_USE_LAUNCHERS in CTestConfig.cmake is convenient, but
-# also adds the launcher overhead even for manual builds. One may
-# instead set it in a CTest dashboard script and add it to the CMake
-# cache for the build tree.)
+# build output for errors and warnings and reports them with surrounding
+# context from the build log. This generic approach works for all build
+# tools, but does not give details about the command invocation that
+# produced a given problem. One may get more detailed reports by adding
+#
+# ::
+#
+# set(CTEST_USE_LAUNCHERS 1)
+#
+# to the CTestConfig.cmake file. When this option is enabled, the CTest
+# module tells CMake's Makefile generators to invoke every command in
+# the generated build system through a CTest launcher program.
+# (Currently the CTEST_USE_LAUNCHERS option is ignored on non-Makefile
+# generators.) During a manual build each launcher transparently runs
+# the command it wraps. During a CTest-driven build for submission to
+# CDash each launcher reports detailed information when its command
+# fails or warns. (Setting CTEST_USE_LAUNCHERS in CTestConfig.cmake is
+# convenient, but also adds the launcher overhead even for manual
+# builds. One may instead set it in a CTest dashboard script and add it
+# to the CMake cache for the build tree.)
#=============================================================================
# Copyright 2005-2009 Kitware, Inc.
diff --git a/Modules/CTestScriptMode.cmake b/Modules/CTestScriptMode.cmake
index 42d3764cb8..b4347242df 100644
--- a/Modules/CTestScriptMode.cmake
+++ b/Modules/CTestScriptMode.cmake
@@ -1,3 +1,9 @@
+#.rst:
+# CTestScriptMode
+# ---------------
+#
+#
+#
# This file is read by ctest in script mode (-S)
#=============================================================================
diff --git a/Modules/CTestUseLaunchers.cmake b/Modules/CTestUseLaunchers.cmake
index 24f5f2e16d..2fab247eb5 100644
--- a/Modules/CTestUseLaunchers.cmake
+++ b/Modules/CTestUseLaunchers.cmake
@@ -1,21 +1,27 @@
-# - Set the RULE_LAUNCH_* global properties when CTEST_USE_LAUNCHERS is on.
+#.rst:
+# CTestUseLaunchers
+# -----------------
+#
+# Set the RULE_LAUNCH_* global properties when CTEST_USE_LAUNCHERS is on.
+#
# CTestUseLaunchers is automatically included when you include(CTest).
-# However, it is split out into its own module file so projects
-# can use the CTEST_USE_LAUNCHERS functionality independently.
+# However, it is split out into its own module file so projects can use
+# the CTEST_USE_LAUNCHERS functionality independently.
#
# To use launchers, set CTEST_USE_LAUNCHERS to ON in a ctest -S
# dashboard script, and then also set it in the cache of the configured
-# project. Both cmake and ctest need to know the value of it for the launchers
-# to work properly. CMake needs to know in order to generate proper build
-# rules, and ctest, in order to produce the proper error and warning
-# analysis.
+# project. Both cmake and ctest need to know the value of it for the
+# launchers to work properly. CMake needs to know in order to generate
+# proper build rules, and ctest, in order to produce the proper error
+# and warning analysis.
#
-# For convenience, you may set the ENV variable CTEST_USE_LAUNCHERS_DEFAULT
-# in your ctest -S script, too. Then, as long as your CMakeLists uses
-# include(CTest) or include(CTestUseLaunchers), it will use the value of the
-# ENV variable to initialize a CTEST_USE_LAUNCHERS cache variable. This cache
-# variable initialization only occurs if CTEST_USE_LAUNCHERS is not already
-# defined.
+# For convenience, you may set the ENV variable
+# CTEST_USE_LAUNCHERS_DEFAULT in your ctest -S script, too. Then, as
+# long as your CMakeLists uses include(CTest) or
+# include(CTestUseLaunchers), it will use the value of the ENV variable
+# to initialize a CTEST_USE_LAUNCHERS cache variable. This cache
+# variable initialization only occurs if CTEST_USE_LAUNCHERS is not
+# already defined.
#=============================================================================
# Copyright 2008-2012 Kitware, Inc.
diff --git a/Modules/CheckCCompilerFlag.cmake b/Modules/CheckCCompilerFlag.cmake
index dab57108ea..efdac20087 100644
--- a/Modules/CheckCCompilerFlag.cmake
+++ b/Modules/CheckCCompilerFlag.cmake
@@ -1,14 +1,22 @@
-# - Check whether the C compiler supports a given flag.
+#.rst:
+# CheckCCompilerFlag
+# ------------------
+#
+# Check whether the C compiler supports a given flag.
+#
# CHECK_C_COMPILER_FLAG(<flag> <var>)
-# <flag> - the compiler flag
-# <var> - variable to store the result
-# This internally calls the check_c_source_compiles macro and
-# sets CMAKE_REQUIRED_DEFINITIONS to <flag>.
-# See help for CheckCSourceCompiles for a listing of variables
-# that can otherwise modify the build.
-# The result only tells that the compiler does not give an error message when
-# it encounters the flag. If the flag has any effect or even a specific one is
-# beyond the scope of this module.
+#
+# ::
+#
+# <flag> - the compiler flag
+# <var> - variable to store the result
+#
+# This internally calls the check_c_source_compiles macro and sets
+# CMAKE_REQUIRED_DEFINITIONS to <flag>. See help for
+# CheckCSourceCompiles for a listing of variables that can otherwise
+# modify the build. The result only tells that the compiler does not
+# give an error message when it encounters the flag. If the flag has
+# any effect or even a specific one is beyond the scope of this module.
#=============================================================================
# Copyright 2006-2011 Kitware, Inc.
diff --git a/Modules/CheckCSourceCompiles.cmake b/Modules/CheckCSourceCompiles.cmake
index 86a4565ce5..c2f6915e31 100644
--- a/Modules/CheckCSourceCompiles.cmake
+++ b/Modules/CheckCSourceCompiles.cmake
@@ -1,15 +1,26 @@
-# - Check if given C source compiles and links into an executable
+#.rst:
+# CheckCSourceCompiles
+# --------------------
+#
+# Check if given C source compiles and links into an executable
+#
# CHECK_C_SOURCE_COMPILES(<code> <var> [FAIL_REGEX <fail-regex>])
-# <code> - source code to try to compile, must define 'main'
-# <var> - variable to store whether the source code compiled
-# <fail-regex> - fail if test output matches this regex
-# The following variables may be set before calling this macro to
-# modify the way the check is run:
#
-# CMAKE_REQUIRED_FLAGS = string of compile command line flags
-# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
-# CMAKE_REQUIRED_INCLUDES = list of include directories
-# CMAKE_REQUIRED_LIBRARIES = list of libraries to link
+# ::
+#
+# <code> - source code to try to compile, must define 'main'
+# <var> - variable to store whether the source code compiled
+# <fail-regex> - fail if test output matches this regex
+#
+# The following variables may be set before calling this macro to modify
+# the way the check is run:
+#
+# ::
+#
+# CMAKE_REQUIRED_FLAGS = string of compile command line flags
+# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
+# CMAKE_REQUIRED_INCLUDES = list of include directories
+# CMAKE_REQUIRED_LIBRARIES = list of libraries to link
#=============================================================================
# Copyright 2005-2009 Kitware, Inc.
diff --git a/Modules/CheckCSourceRuns.cmake b/Modules/CheckCSourceRuns.cmake
index e3a091fb3c..2e68454c4d 100644
--- a/Modules/CheckCSourceRuns.cmake
+++ b/Modules/CheckCSourceRuns.cmake
@@ -1,15 +1,26 @@
-# - Check if the given C source code compiles and runs.
+#.rst:
+# CheckCSourceRuns
+# ----------------
+#
+# Check if the given C source code compiles and runs.
+#
# CHECK_C_SOURCE_RUNS(<code> <var>)
-# <code> - source code to try to compile
-# <var> - variable to store the result
-# (1 for success, empty for failure)
-# The following variables may be set before calling this macro to
-# modify the way the check is run:
#
-# CMAKE_REQUIRED_FLAGS = string of compile command line flags
-# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
-# CMAKE_REQUIRED_INCLUDES = list of include directories
-# CMAKE_REQUIRED_LIBRARIES = list of libraries to link
+# ::
+#
+# <code> - source code to try to compile
+# <var> - variable to store the result
+# (1 for success, empty for failure)
+#
+# The following variables may be set before calling this macro to modify
+# the way the check is run:
+#
+# ::
+#
+# CMAKE_REQUIRED_FLAGS = string of compile command line flags
+# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
+# CMAKE_REQUIRED_INCLUDES = list of include directories
+# CMAKE_REQUIRED_LIBRARIES = list of libraries to link
#=============================================================================
# Copyright 2006-2009 Kitware, Inc.
diff --git a/Modules/CheckCXXCompilerFlag.cmake b/Modules/CheckCXXCompilerFlag.cmake
index 4435a1f4c9..fab3a053d0 100644
--- a/Modules/CheckCXXCompilerFlag.cmake
+++ b/Modules/CheckCXXCompilerFlag.cmake
@@ -1,14 +1,22 @@
-# - Check whether the CXX compiler supports a given flag.
+#.rst:
+# CheckCXXCompilerFlag
+# --------------------
+#
+# Check whether the CXX compiler supports a given flag.
+#
# CHECK_CXX_COMPILER_FLAG(<flag> <var>)
-# <flag> - the compiler flag
-# <var> - variable to store the result
-# This internally calls the check_cxx_source_compiles macro and
-# sets CMAKE_REQUIRED_DEFINITIONS to <flag>.
-# See help for CheckCXXSourceCompiles for a listing of variables
-# that can otherwise modify the build.
-# The result only tells that the compiler does not give an error message when
-# it encounters the flag. If the flag has any effect or even a specific one is
-# beyond the scope of this module.
+#
+# ::
+#
+# <flag> - the compiler flag
+# <var> - variable to store the result
+#
+# This internally calls the check_cxx_source_compiles macro and sets
+# CMAKE_REQUIRED_DEFINITIONS to <flag>. See help for
+# CheckCXXSourceCompiles for a listing of variables that can otherwise
+# modify the build. The result only tells that the compiler does not
+# give an error message when it encounters the flag. If the flag has
+# any effect or even a specific one is beyond the scope of this module.
#=============================================================================
# Copyright 2006-2010 Kitware, Inc.
diff --git a/Modules/CheckCXXSourceCompiles.cmake b/Modules/CheckCXXSourceCompiles.cmake
index 734c0839b0..c7ef5ecac1 100644
--- a/Modules/CheckCXXSourceCompiles.cmake
+++ b/Modules/CheckCXXSourceCompiles.cmake
@@ -1,15 +1,26 @@
-# - Check if given C++ source compiles and links into an executable
+#.rst:
+# CheckCXXSourceCompiles
+# ----------------------
+#
+# Check if given C++ source compiles and links into an executable
+#
# CHECK_CXX_SOURCE_COMPILES(<code> <var> [FAIL_REGEX <fail-regex>])
-# <code> - source code to try to compile, must define 'main'
-# <var> - variable to store whether the source code compiled
-# <fail-regex> - fail if test output matches this regex
-# The following variables may be set before calling this macro to
-# modify the way the check is run:
#
-# CMAKE_REQUIRED_FLAGS = string of compile command line flags
-# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
-# CMAKE_REQUIRED_INCLUDES = list of include directories
-# CMAKE_REQUIRED_LIBRARIES = list of libraries to link
+# ::
+#
+# <code> - source code to try to compile, must define 'main'
+# <var> - variable to store whether the source code compiled
+# <fail-regex> - fail if test output matches this regex
+#
+# The following variables may be set before calling this macro to modify
+# the way the check is run:
+#
+# ::
+#
+# CMAKE_REQUIRED_FLAGS = string of compile command line flags
+# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
+# CMAKE_REQUIRED_INCLUDES = list of include directories
+# CMAKE_REQUIRED_LIBRARIES = list of libraries to link
#=============================================================================
# Copyright 2005-2009 Kitware, Inc.
diff --git a/Modules/CheckCXXSourceRuns.cmake b/Modules/CheckCXXSourceRuns.cmake
index 9e401f18eb..4e3ff6c2c7 100644
--- a/Modules/CheckCXXSourceRuns.cmake
+++ b/Modules/CheckCXXSourceRuns.cmake
@@ -1,15 +1,26 @@
-# - Check if the given C++ source code compiles and runs.
+#.rst:
+# CheckCXXSourceRuns
+# ------------------
+#
+# Check if the given C++ source code compiles and runs.
+#
# CHECK_CXX_SOURCE_RUNS(<code> <var>)
-# <code> - source code to try to compile
-# <var> - variable to store the result
-# (1 for success, empty for failure)
-# The following variables may be set before calling this macro to
-# modify the way the check is run:
#
-# CMAKE_REQUIRED_FLAGS = string of compile command line flags
-# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
-# CMAKE_REQUIRED_INCLUDES = list of include directories
-# CMAKE_REQUIRED_LIBRARIES = list of libraries to link
+# ::
+#
+# <code> - source code to try to compile
+# <var> - variable to store the result
+# (1 for success, empty for failure)
+#
+# The following variables may be set before calling this macro to modify
+# the way the check is run:
+#
+# ::
+#
+# CMAKE_REQUIRED_FLAGS = string of compile command line flags
+# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
+# CMAKE_REQUIRED_INCLUDES = list of include directories
+# CMAKE_REQUIRED_LIBRARIES = list of libraries to link
#=============================================================================
# Copyright 2006-2009 Kitware, Inc.
diff --git a/Modules/CheckCXXSymbolExists.cmake b/Modules/CheckCXXSymbolExists.cmake
index 2100973784..aa62fbf5a4 100644
--- a/Modules/CheckCXXSymbolExists.cmake
+++ b/Modules/CheckCXXSymbolExists.cmake
@@ -1,26 +1,32 @@
-# - Check if a symbol exists as a function, variable, or macro in C++
+#.rst:
+# CheckCXXSymbolExists
+# --------------------
+#
+# Check if a symbol exists as a function, variable, or macro in C++
+#
# CHECK_CXX_SYMBOL_EXISTS(<symbol> <files> <variable>)
#
# Check that the <symbol> is available after including given header
-# <files> and store the result in a <variable>. Specify the list
-# of files in one argument as a semicolon-separated list.
-# CHECK_CXX_SYMBOL_EXISTS() can be used to check in C++ files, as opposed
-# to CHECK_SYMBOL_EXISTS(), which works only for C.
+# <files> and store the result in a <variable>. Specify the list of
+# files in one argument as a semicolon-separated list.
+# CHECK_CXX_SYMBOL_EXISTS() can be used to check in C++ files, as
+# opposed to CHECK_SYMBOL_EXISTS(), which works only for C.
#
# If the header files define the symbol as a macro it is considered
-# available and assumed to work. If the header files declare the
-# symbol as a function or variable then the symbol must also be
-# available for linking. If the symbol is a type or enum value
-# it will not be recognized (consider using CheckTypeSize or
-# CheckCSourceCompiles).
-#
-# The following variables may be set before calling this macro to
-# modify the way the check is run:
-#
-# CMAKE_REQUIRED_FLAGS = string of compile command line flags
-# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
-# CMAKE_REQUIRED_INCLUDES = list of include directories
-# CMAKE_REQUIRED_LIBRARIES = list of libraries to link
+# available and assumed to work. If the header files declare the symbol
+# as a function or variable then the symbol must also be available for
+# linking. If the symbol is a type or enum value it will not be
+# recognized (consider using CheckTypeSize or CheckCSourceCompiles).
+#
+# The following variables may be set before calling this macro to modify
+# the way the check is run:
+#
+# ::
+#
+# CMAKE_REQUIRED_FLAGS = string of compile command line flags
+# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
+# CMAKE_REQUIRED_INCLUDES = list of include directories
+# CMAKE_REQUIRED_LIBRARIES = list of libraries to link
#=============================================================================
# Copyright 2003-2011 Kitware, Inc.
diff --git a/Modules/CheckFortranFunctionExists.cmake b/Modules/CheckFortranFunctionExists.cmake
index 45dd7bebe6..0b12289098 100644
--- a/Modules/CheckFortranFunctionExists.cmake
+++ b/Modules/CheckFortranFunctionExists.cmake
@@ -1,13 +1,24 @@
-# - Check if the Fortran function exists.
+#.rst:
+# CheckFortranFunctionExists
+# --------------------------
+#
+# macro which checks if the Fortran function exists
+#
# CHECK_FORTRAN_FUNCTION_EXISTS(FUNCTION VARIABLE)
-# - macro which checks if the Fortran function exists
-# FUNCTION - the name of the Fortran function
-# VARIABLE - variable to store the result
#
-# The following variables may be set before calling this macro to
-# modify the way the check is run:
+# ::
+#
+# FUNCTION - the name of the Fortran function
+# VARIABLE - variable to store the result
+#
+#
+#
+# The following variables may be set before calling this macro to modify
+# the way the check is run:
+#
+# ::
#
-# CMAKE_REQUIRED_LIBRARIES = list of libraries to link
+# CMAKE_REQUIRED_LIBRARIES = list of libraries to link
#=============================================================================
# Copyright 2007-2009 Kitware, Inc.
diff --git a/Modules/CheckFunctionExists.cmake b/Modules/CheckFunctionExists.cmake
index ead1354417..e232bd7b6c 100644
--- a/Modules/CheckFunctionExists.cmake
+++ b/Modules/CheckFunctionExists.cmake
@@ -1,18 +1,25 @@
-# - Check if a C function can be linked
+#.rst:
+# CheckFunctionExists
+# -------------------
+#
+# Check if a C function can be linked
+#
# CHECK_FUNCTION_EXISTS(<function> <variable>)
#
# Check that the <function> is provided by libraries on the system and
# store the result in a <variable>. This does not verify that any
-# system header file declares the function, only that it can be found
-# at link time (consider using CheckSymbolExists).
+# system header file declares the function, only that it can be found at
+# link time (consider using CheckSymbolExists).
+#
+# The following variables may be set before calling this macro to modify
+# the way the check is run:
#
-# The following variables may be set before calling this macro to
-# modify the way the check is run:
+# ::
#
-# CMAKE_REQUIRED_FLAGS = string of compile command line flags
-# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
-# CMAKE_REQUIRED_INCLUDES = list of include directories
-# CMAKE_REQUIRED_LIBRARIES = list of libraries to link
+# CMAKE_REQUIRED_FLAGS = string of compile command line flags
+# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
+# CMAKE_REQUIRED_INCLUDES = list of include directories
+# CMAKE_REQUIRED_LIBRARIES = list of libraries to link
#=============================================================================
# Copyright 2002-2011 Kitware, Inc.
diff --git a/Modules/CheckIncludeFile.cmake b/Modules/CheckIncludeFile.cmake
index 8067e65ce7..2d0edf9ec6 100644
--- a/Modules/CheckIncludeFile.cmake
+++ b/Modules/CheckIncludeFile.cmake
@@ -1,19 +1,29 @@
-# - Check if the include file exists.
+#.rst:
+# CheckIncludeFile
+# ----------------
+#
+# macro which checks the include file exists.
+#
# CHECK_INCLUDE_FILE(INCLUDE VARIABLE)
-# - macro which checks the include file exists.
-# INCLUDE - name of include file
-# VARIABLE - variable to return result
#
-# an optional third argument is the CFlags to add to the compile line
-# or you can use CMAKE_REQUIRED_FLAGS
+# ::
+#
+# INCLUDE - name of include file
+# VARIABLE - variable to return result
+#
+#
+#
+# an optional third argument is the CFlags to add to the compile line or
+# you can use CMAKE_REQUIRED_FLAGS
#
-# The following variables may be set before calling this macro to
-# modify the way the check is run:
+# The following variables may be set before calling this macro to modify
+# the way the check is run:
#
-# CMAKE_REQUIRED_FLAGS = string of compile command line flags
-# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
-# CMAKE_REQUIRED_INCLUDES = list of include directories
+# ::
#
+# CMAKE_REQUIRED_FLAGS = string of compile command line flags
+# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
+# CMAKE_REQUIRED_INCLUDES = list of include directories
#=============================================================================
# Copyright 2002-2009 Kitware, Inc.
diff --git a/Modules/CheckIncludeFileCXX.cmake b/Modules/CheckIncludeFileCXX.cmake
index 22c2d1ac72..7a86be5b13 100644
--- a/Modules/CheckIncludeFileCXX.cmake
+++ b/Modules/CheckIncludeFileCXX.cmake
@@ -1,19 +1,33 @@
-# - Check if the include file exists.
-# CHECK_INCLUDE_FILE_CXX(INCLUDE VARIABLE)
+#.rst:
+# CheckIncludeFileCXX
+# -------------------
#
-# INCLUDE - name of include file
-# VARIABLE - variable to return result
+# Check if the include file exists.
#
-# An optional third argument is the CFlags to add to the compile line
-# or you can use CMAKE_REQUIRED_FLAGS.
+# ::
#
-# The following variables may be set before calling this macro to
-# modify the way the check is run:
+# CHECK_INCLUDE_FILE_CXX(INCLUDE VARIABLE)
#
-# CMAKE_REQUIRED_FLAGS = string of compile command line flags
-# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
-# CMAKE_REQUIRED_INCLUDES = list of include directories
#
+#
+# ::
+#
+# INCLUDE - name of include file
+# VARIABLE - variable to return result
+#
+#
+#
+# An optional third argument is the CFlags to add to the compile line or
+# you can use CMAKE_REQUIRED_FLAGS.
+#
+# The following variables may be set before calling this macro to modify
+# the way the check is run:
+#
+# ::
+#
+# CMAKE_REQUIRED_FLAGS = string of compile command line flags
+# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
+# CMAKE_REQUIRED_INCLUDES = list of include directories
#=============================================================================
# Copyright 2002-2009 Kitware, Inc.
diff --git a/Modules/CheckIncludeFiles.cmake b/Modules/CheckIncludeFiles.cmake
index daf2dd0ea3..75bf27c332 100644
--- a/Modules/CheckIncludeFiles.cmake
+++ b/Modules/CheckIncludeFiles.cmake
@@ -1,16 +1,28 @@
-# - Check if the files can be included
+#.rst:
+# CheckIncludeFiles
+# -----------------
+#
+# Check if the files can be included
+#
+#
#
# CHECK_INCLUDE_FILES(INCLUDE VARIABLE)
#
-# INCLUDE - list of files to include
-# VARIABLE - variable to return result
+# ::
+#
+# INCLUDE - list of files to include
+# VARIABLE - variable to return result
+#
+#
+#
+# The following variables may be set before calling this macro to modify
+# the way the check is run:
#
-# The following variables may be set before calling this macro to
-# modify the way the check is run:
+# ::
#
-# CMAKE_REQUIRED_FLAGS = string of compile command line flags
-# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
-# CMAKE_REQUIRED_INCLUDES = list of include directories
+# CMAKE_REQUIRED_FLAGS = string of compile command line flags
+# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
+# CMAKE_REQUIRED_INCLUDES = list of include directories
#=============================================================================
# Copyright 2003-2012 Kitware, Inc.
diff --git a/Modules/CheckLanguage.cmake b/Modules/CheckLanguage.cmake
index 87a4018137..3bd126a6c3 100644
--- a/Modules/CheckLanguage.cmake
+++ b/Modules/CheckLanguage.cmake
@@ -1,19 +1,32 @@
-# - Check if a language can be enabled
+#.rst:
+# CheckLanguage
+# -------------
+#
+# Check if a language can be enabled
+#
# Usage:
-# check_language(<lang>)
+#
+# ::
+#
+# check_language(<lang>)
+#
# where <lang> is a language that may be passed to enable_language()
# such as "Fortran". If CMAKE_<lang>_COMPILER is already defined the
# check does nothing. Otherwise it tries enabling the language in a
# test project. The result is cached in CMAKE_<lang>_COMPILER as the
-# compiler that was found, or NOTFOUND if the language cannot be enabled.
+# compiler that was found, or NOTFOUND if the language cannot be
+# enabled.
#
# Example:
-# check_language(Fortran)
-# if(CMAKE_Fortran_COMPILER)
-# enable_language(Fortran)
-# else()
-# message(STATUS "No Fortran support")
-# endif()
+#
+# ::
+#
+# check_language(Fortran)
+# if(CMAKE_Fortran_COMPILER)
+# enable_language(Fortran)
+# else()
+# message(STATUS "No Fortran support")
+# endif()
#=============================================================================
# Copyright 2009-2012 Kitware, Inc.
diff --git a/Modules/CheckLibraryExists.cmake b/Modules/CheckLibraryExists.cmake
index fb7d0ec017..f5c563c208 100644
--- a/Modules/CheckLibraryExists.cmake
+++ b/Modules/CheckLibraryExists.cmake
@@ -1,17 +1,28 @@
-# - Check if the function exists.
+#.rst:
+# CheckLibraryExists
+# ------------------
+#
+# Check if the function exists.
+#
# CHECK_LIBRARY_EXISTS (LIBRARY FUNCTION LOCATION VARIABLE)
#
-# LIBRARY - the name of the library you are looking for
-# FUNCTION - the name of the function
-# LOCATION - location where the library should be found
-# VARIABLE - variable to store the result
+# ::
+#
+# LIBRARY - the name of the library you are looking for
+# FUNCTION - the name of the function
+# LOCATION - location where the library should be found
+# VARIABLE - variable to store the result
+#
+#
+#
+# The following variables may be set before calling this macro to modify
+# the way the check is run:
#
-# The following variables may be set before calling this macro to
-# modify the way the check is run:
+# ::
#
-# CMAKE_REQUIRED_FLAGS = string of compile command line flags
-# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
-# CMAKE_REQUIRED_LIBRARIES = list of libraries to link
+# CMAKE_REQUIRED_FLAGS = string of compile command line flags
+# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
+# CMAKE_REQUIRED_LIBRARIES = list of libraries to link
#=============================================================================
# Copyright 2002-2009 Kitware, Inc.
diff --git a/Modules/CheckPrototypeDefinition.cmake b/Modules/CheckPrototypeDefinition.cmake
index 2342b3c4f7..25ea7f499e 100644
--- a/Modules/CheckPrototypeDefinition.cmake
+++ b/Modules/CheckPrototypeDefinition.cmake
@@ -1,23 +1,38 @@
-# - Check if the protoype we expect is correct.
+#.rst:
+# CheckPrototypeDefinition
+# ------------------------
+#
+# Check if the protoype we expect is correct.
+#
# check_prototype_definition(FUNCTION PROTOTYPE RETURN HEADER VARIABLE)
-# FUNCTION - The name of the function (used to check if prototype exists)
-# PROTOTYPE- The prototype to check.
-# RETURN - The return value of the function.
-# HEADER - The header files required.
-# VARIABLE - The variable to store the result.
+#
+# ::
+#
+# FUNCTION - The name of the function (used to check if prototype exists)
+# PROTOTYPE- The prototype to check.
+# RETURN - The return value of the function.
+# HEADER - The header files required.
+# VARIABLE - The variable to store the result.
+#
# Example:
-# check_prototype_definition(getpwent_r
-# "struct passwd *getpwent_r(struct passwd *src, char *buf, int buflen)"
-# "NULL"
-# "unistd.h;pwd.h"
-# SOLARIS_GETPWENT_R)
-# The following variables may be set before calling this macro to
-# modify the way the check is run:
#
-# CMAKE_REQUIRED_FLAGS = string of compile command line flags
-# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
-# CMAKE_REQUIRED_INCLUDES = list of include directories
-# CMAKE_REQUIRED_LIBRARIES = list of libraries to link
+# ::
+#
+# check_prototype_definition(getpwent_r
+# "struct passwd *getpwent_r(struct passwd *src, char *buf, int buflen)"
+# "NULL"
+# "unistd.h;pwd.h"
+# SOLARIS_GETPWENT_R)
+#
+# The following variables may be set before calling this macro to modify
+# the way the check is run:
+#
+# ::
+#
+# CMAKE_REQUIRED_FLAGS = string of compile command line flags
+# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
+# CMAKE_REQUIRED_INCLUDES = list of include directories
+# CMAKE_REQUIRED_LIBRARIES = list of libraries to link
#=============================================================================
# Copyright 2005-2009 Kitware, Inc.
diff --git a/Modules/CheckStructHasMember.cmake b/Modules/CheckStructHasMember.cmake
index d28cc2a1e1..a4ed8d537a 100644
--- a/Modules/CheckStructHasMember.cmake
+++ b/Modules/CheckStructHasMember.cmake
@@ -1,22 +1,41 @@
-# - Check if the given struct or class has the specified member variable
+#.rst:
+# CheckStructHasMember
+# --------------------
+#
+# Check if the given struct or class has the specified member variable
+#
# CHECK_STRUCT_HAS_MEMBER (<struct> <member> <header> <variable>
-# [LANGUAGE <language>])
#
-# <struct> - the name of the struct or class you are interested in
-# <member> - the member which existence you want to check
-# <header> - the header(s) where the prototype should be declared
-# <variable> - variable to store the result
-# <language> - the compiler to use (C or CXX)
+# ::
+#
+# [LANGUAGE <language>])
+#
+#
+#
+# ::
+#
+# <struct> - the name of the struct or class you are interested in
+# <member> - the member which existence you want to check
+# <header> - the header(s) where the prototype should be declared
+# <variable> - variable to store the result
+# <language> - the compiler to use (C or CXX)
+#
+#
+#
+# The following variables may be set before calling this macro to modify
+# the way the check is run:
+#
+# ::
+#
+# CMAKE_REQUIRED_FLAGS = string of compile command line flags
+# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
+# CMAKE_REQUIRED_INCLUDES = list of include directories
+# CMAKE_REQUIRED_LIBRARIES = list of libraries to link
#
-# The following variables may be set before calling this macro to
-# modify the way the check is run:
#
-# CMAKE_REQUIRED_FLAGS = string of compile command line flags
-# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
-# CMAKE_REQUIRED_INCLUDES = list of include directories
-# CMAKE_REQUIRED_LIBRARIES = list of libraries to link
#
-# Example: CHECK_STRUCT_HAS_MEMBER("struct timeval" tv_sec sys/select.h HAVE_TIMEVAL_TV_SEC LANGUAGE C)
+# Example: CHECK_STRUCT_HAS_MEMBER("struct timeval" tv_sec sys/select.h
+# HAVE_TIMEVAL_TV_SEC LANGUAGE C)
#=============================================================================
# Copyright 2007-2009 Kitware, Inc.
diff --git a/Modules/CheckSymbolExists.cmake b/Modules/CheckSymbolExists.cmake
index 0969bc5626..eeac4c9225 100644
--- a/Modules/CheckSymbolExists.cmake
+++ b/Modules/CheckSymbolExists.cmake
@@ -1,26 +1,33 @@
-# - Check if a symbol exists as a function, variable, or macro
+#.rst:
+# CheckSymbolExists
+# -----------------
+#
+# Check if a symbol exists as a function, variable, or macro
+#
# CHECK_SYMBOL_EXISTS(<symbol> <files> <variable>)
#
# Check that the <symbol> is available after including given header
-# <files> and store the result in a <variable>. Specify the list
-# of files in one argument as a semicolon-separated list.
+# <files> and store the result in a <variable>. Specify the list of
+# files in one argument as a semicolon-separated list.
#
# If the header files define the symbol as a macro it is considered
-# available and assumed to work. If the header files declare the
-# symbol as a function or variable then the symbol must also be
-# available for linking. If the symbol is a type or enum value
-# it will not be recognized (consider using CheckTypeSize or
-# CheckCSourceCompiles).
-# If the check needs to be done in C++, consider using CHECK_CXX_SYMBOL_EXISTS(),
-# which does the same as CHECK_SYMBOL_EXISTS(), but in C++.
+# available and assumed to work. If the header files declare the symbol
+# as a function or variable then the symbol must also be available for
+# linking. If the symbol is a type or enum value it will not be
+# recognized (consider using CheckTypeSize or CheckCSourceCompiles). If
+# the check needs to be done in C++, consider using
+# CHECK_CXX_SYMBOL_EXISTS(), which does the same as
+# CHECK_SYMBOL_EXISTS(), but in C++.
+#
+# The following variables may be set before calling this macro to modify
+# the way the check is run:
#
-# The following variables may be set before calling this macro to
-# modify the way the check is run:
+# ::
#
-# CMAKE_REQUIRED_FLAGS = string of compile command line flags
-# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
-# CMAKE_REQUIRED_INCLUDES = list of include directories
-# CMAKE_REQUIRED_LIBRARIES = list of libraries to link
+# CMAKE_REQUIRED_FLAGS = string of compile command line flags
+# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
+# CMAKE_REQUIRED_INCLUDES = list of include directories
+# CMAKE_REQUIRED_LIBRARIES = list of libraries to link
#=============================================================================
# Copyright 2003-2011 Kitware, Inc.
diff --git a/Modules/CheckTypeSize.cmake b/Modules/CheckTypeSize.cmake
index 2d0eab51cb..0798176509 100644
--- a/Modules/CheckTypeSize.cmake
+++ b/Modules/CheckTypeSize.cmake
@@ -1,42 +1,61 @@
-# - Check sizeof a type
-# CHECK_TYPE_SIZE(TYPE VARIABLE [BUILTIN_TYPES_ONLY])
-# Check if the type exists and determine its size.
-# On return, "HAVE_${VARIABLE}" holds the existence of the type,
-# and "${VARIABLE}" holds one of the following:
-# <size> = type has non-zero size <size>
-# "0" = type has arch-dependent size (see below)
-# "" = type does not exist
-# Furthermore, the variable "${VARIABLE}_CODE" holds C preprocessor
-# code to define the macro "${VARIABLE}" to the size of the type, or
-# leave the macro undefined if the type does not exist.
-#
-# The variable "${VARIABLE}" may be "0" when CMAKE_OSX_ARCHITECTURES
-# has multiple architectures for building OS X universal binaries.
-# This indicates that the type size varies across architectures.
-# In this case "${VARIABLE}_CODE" contains C preprocessor tests
-# mapping from each architecture macro to the corresponding type size.
-# The list of architecture macros is stored in "${VARIABLE}_KEYS", and
-# the value for each key is stored in "${VARIABLE}-${KEY}".
+#.rst:
+# CheckTypeSize
+# -------------
+#
+# Check sizeof a type
+#
+# ::
+#
+# CHECK_TYPE_SIZE(TYPE VARIABLE [BUILTIN_TYPES_ONLY])
+#
+# Check if the type exists and determine its size. On return,
+# "HAVE_${VARIABLE}" holds the existence of the type, and "${VARIABLE}"
+# holds one of the following:
+#
+# ::
+#
+# <size> = type has non-zero size <size>
+# "0" = type has arch-dependent size (see below)
+# "" = type does not exist
+#
+# Furthermore, the variable "${VARIABLE}_CODE" holds C preprocessor code
+# to define the macro "${VARIABLE}" to the size of the type, or leave
+# the macro undefined if the type does not exist.
+#
+# The variable "${VARIABLE}" may be "0" when CMAKE_OSX_ARCHITECTURES has
+# multiple architectures for building OS X universal binaries. This
+# indicates that the type size varies across architectures. In this
+# case "${VARIABLE}_CODE" contains C preprocessor tests mapping from
+# each architecture macro to the corresponding type size. The list of
+# architecture macros is stored in "${VARIABLE}_KEYS", and the value for
+# each key is stored in "${VARIABLE}-${KEY}".
#
# If the BUILTIN_TYPES_ONLY option is not given, the macro checks for
# headers <sys/types.h>, <stdint.h>, and <stddef.h>, and saves results
-# in HAVE_SYS_TYPES_H, HAVE_STDINT_H, and HAVE_STDDEF_H. The type
-# size check automatically includes the available headers, thus
-# supporting checks of types defined in the headers.
+# in HAVE_SYS_TYPES_H, HAVE_STDINT_H, and HAVE_STDDEF_H. The type size
+# check automatically includes the available headers, thus supporting
+# checks of types defined in the headers.
#
-# Despite the name of the macro you may use it to check the size of
-# more complex expressions, too. To check e.g. for the size of a struct
+# Despite the name of the macro you may use it to check the size of more
+# complex expressions, too. To check e.g. for the size of a struct
# member you can do something like this:
-# check_type_size("((struct something*)0)->member" SIZEOF_MEMBER)
#
-# The following variables may be set before calling this macro to
-# modify the way the check is run:
+# ::
+#
+# check_type_size("((struct something*)0)->member" SIZEOF_MEMBER)
+#
+#
+#
+# The following variables may be set before calling this macro to modify
+# the way the check is run:
+#
+# ::
#
-# CMAKE_REQUIRED_FLAGS = string of compile command line flags
-# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
-# CMAKE_REQUIRED_INCLUDES = list of include directories
-# CMAKE_REQUIRED_LIBRARIES = list of libraries to link
-# CMAKE_EXTRA_INCLUDE_FILES = list of extra headers to include
+# CMAKE_REQUIRED_FLAGS = string of compile command line flags
+# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
+# CMAKE_REQUIRED_INCLUDES = list of include directories
+# CMAKE_REQUIRED_LIBRARIES = list of libraries to link
+# CMAKE_EXTRA_INCLUDE_FILES = list of extra headers to include
#=============================================================================
# Copyright 2002-2009 Kitware, Inc.
diff --git a/Modules/CheckVariableExists.cmake b/Modules/CheckVariableExists.cmake
index a21e65f265..4861ff07a6 100644
--- a/Modules/CheckVariableExists.cmake
+++ b/Modules/CheckVariableExists.cmake
@@ -1,17 +1,32 @@
-# - Check if the variable exists.
-# CHECK_VARIABLE_EXISTS(VAR VARIABLE)
+#.rst:
+# CheckVariableExists
+# -------------------
+#
+# Check if the variable exists.
+#
+# ::
+#
+# CHECK_VARIABLE_EXISTS(VAR VARIABLE)
+#
+#
+#
+# ::
+#
+# VAR - the name of the variable
+# VARIABLE - variable to store the result
+#
#
-# VAR - the name of the variable
-# VARIABLE - variable to store the result
#
# This macro is only for C variables.
#
-# The following variables may be set before calling this macro to
-# modify the way the check is run:
+# The following variables may be set before calling this macro to modify
+# the way the check is run:
+#
+# ::
#
-# CMAKE_REQUIRED_FLAGS = string of compile command line flags
-# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
-# CMAKE_REQUIRED_LIBRARIES = list of libraries to link
+# CMAKE_REQUIRED_FLAGS = string of compile command line flags
+# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
+# CMAKE_REQUIRED_LIBRARIES = list of libraries to link
#=============================================================================
# Copyright 2002-2009 Kitware, Inc.
diff --git a/Modules/Dart.cmake b/Modules/Dart.cmake
index bd744b0032..db487d8f58 100644
--- a/Modules/Dart.cmake
+++ b/Modules/Dart.cmake
@@ -1,12 +1,22 @@
-# - Configure a project for testing with CTest or old Dart Tcl Client
+#.rst:
+# Dart
+# ----
+#
+# Configure a project for testing with CTest or old Dart Tcl Client
+#
# This file is the backwards-compatibility version of the CTest module.
# It supports using the old Dart 1 Tcl client for driving dashboard
-# submissions as well as testing with CTest. This module should be included
-# in the CMakeLists.txt file at the top of a project. Typical usage:
-# include(Dart)
-# if(BUILD_TESTING)
-# # ... testing related CMake code ...
-# endif()
+# submissions as well as testing with CTest. This module should be
+# included in the CMakeLists.txt file at the top of a project. Typical
+# usage:
+#
+# ::
+#
+# include(Dart)
+# if(BUILD_TESTING)
+# # ... testing related CMake code ...
+# endif()
+#
# The BUILD_TESTING option is created by the Dart module to determine
# whether testing support should be enabled. The default is ON.
diff --git a/Modules/DeployQt4.cmake b/Modules/DeployQt4.cmake
index 5f8a9fbf37..9b31567c90 100644
--- a/Modules/DeployQt4.cmake
+++ b/Modules/DeployQt4.cmake
@@ -1,68 +1,99 @@
-# - Functions to help assemble a standalone Qt4 executable.
-# A collection of CMake utility functions useful for deploying
-# Qt4 executables.
+#.rst:
+# DeployQt4
+# ---------
+#
+# Functions to help assemble a standalone Qt4 executable.
+#
+# A collection of CMake utility functions useful for deploying Qt4
+# executables.
#
# The following functions are provided by this module:
-# write_qt4_conf
-# resolve_qt4_paths
-# fixup_qt4_executable
-# install_qt4_plugin_path
-# install_qt4_plugin
-# install_qt4_executable
+#
+# ::
+#
+# write_qt4_conf
+# resolve_qt4_paths
+# fixup_qt4_executable
+# install_qt4_plugin_path
+# install_qt4_plugin
+# install_qt4_executable
+#
# Requires CMake 2.6 or greater because it uses function and
-# PARENT_SCOPE. Also depends on BundleUtilities.cmake.
+# PARENT_SCOPE. Also depends on BundleUtilities.cmake.
+#
+# ::
+#
+# WRITE_QT4_CONF(<qt_conf_dir> <qt_conf_contents>)
#
-# WRITE_QT4_CONF(<qt_conf_dir> <qt_conf_contents>)
# Writes a qt.conf file with the <qt_conf_contents> into <qt_conf_dir>.
#
-# RESOLVE_QT4_PATHS(<paths_var> [<executable_path>])
+# ::
+#
+# RESOLVE_QT4_PATHS(<paths_var> [<executable_path>])
+#
# Loop through <paths_var> list and if any don't exist resolve them
-# relative to the <executable_path> (if supplied) or the CMAKE_INSTALL_PREFIX.
+# relative to the <executable_path> (if supplied) or the
+# CMAKE_INSTALL_PREFIX.
+#
+# ::
#
-# FIXUP_QT4_EXECUTABLE(<executable> [<qtplugins> <libs> <dirs> <plugins_dir> <request_qt_conf>])
-# Copies Qt plugins, writes a Qt configuration file (if needed) and fixes up a
-# Qt4 executable using BundleUtilities so it is standalone and can be
-# drag-and-drop copied to another machine as long as all of the system
-# libraries are compatible.
+# FIXUP_QT4_EXECUTABLE(<executable> [<qtplugins> <libs> <dirs> <plugins_dir> <request_qt_conf>])
+#
+# Copies Qt plugins, writes a Qt configuration file (if needed) and
+# fixes up a Qt4 executable using BundleUtilities so it is standalone
+# and can be drag-and-drop copied to another machine as long as all of
+# the system libraries are compatible.
#
# <executable> should point to the executable to be fixed-up.
#
-# <qtplugins> should contain a list of the names or paths of any Qt plugins
-# to be installed.
+# <qtplugins> should contain a list of the names or paths of any Qt
+# plugins to be installed.
#
-# <libs> will be passed to BundleUtilities and should be a list of any already
-# installed plugins, libraries or executables to also be fixed-up.
+# <libs> will be passed to BundleUtilities and should be a list of any
+# already installed plugins, libraries or executables to also be
+# fixed-up.
#
-# <dirs> will be passed to BundleUtilities and should contain and directories
-# to be searched to find library dependencies.
+# <dirs> will be passed to BundleUtilities and should contain and
+# directories to be searched to find library dependencies.
#
# <plugins_dir> allows an custom plugins directory to be used.
#
-# <request_qt_conf> will force a qt.conf file to be written even if not needed.
+# <request_qt_conf> will force a qt.conf file to be written even if not
+# needed.
+#
+# ::
+#
+# INSTALL_QT4_PLUGIN_PATH(plugin executable copy installed_plugin_path_var <plugins_dir> <component> <configurations>)
#
-# INSTALL_QT4_PLUGIN_PATH(plugin executable copy installed_plugin_path_var <plugins_dir> <component> <configurations>)
# Install (or copy) a resolved <plugin> to the default plugins directory
# (or <plugins_dir>) relative to <executable> and store the result in
# <installed_plugin_path_var>.
#
# If <copy> is set to TRUE then the plugins will be copied rather than
-# installed. This is to allow this module to be used at CMake time rather than
-# install time.
+# installed. This is to allow this module to be used at CMake time
+# rather than install time.
#
# If <component> is set then anything installed will use this COMPONENT.
#
-# INSTALL_QT4_PLUGIN(plugin executable copy installed_plugin_path_var <plugins_dir> <component>)
-# Install (or copy) an unresolved <plugin> to the default plugins directory
-# (or <plugins_dir>) relative to <executable> and store the result in
-# <installed_plugin_path_var>. See documentation of INSTALL_QT4_PLUGIN_PATH.
-#
-# INSTALL_QT4_EXECUTABLE(<executable> [<qtplugins> <libs> <dirs> <plugins_dir> <request_qt_conf> <component>])
-# Installs Qt plugins, writes a Qt configuration file (if needed) and fixes up
-# a Qt4 executable using BundleUtilities so it is standalone and can be
-# drag-and-drop copied to another machine as long as all of the system
-# libraries are compatible. The executable will be fixed-up at install time.
-# <component> is the COMPONENT used for bundle fixup and plugin installation.
-# See documentation of FIXUP_QT4_BUNDLE.
+# ::
+#
+# INSTALL_QT4_PLUGIN(plugin executable copy installed_plugin_path_var <plugins_dir> <component>)
+#
+# Install (or copy) an unresolved <plugin> to the default plugins
+# directory (or <plugins_dir>) relative to <executable> and store the
+# result in <installed_plugin_path_var>. See documentation of
+# INSTALL_QT4_PLUGIN_PATH.
+#
+# ::
+#
+# INSTALL_QT4_EXECUTABLE(<executable> [<qtplugins> <libs> <dirs> <plugins_dir> <request_qt_conf> <component>])
+#
+# Installs Qt plugins, writes a Qt configuration file (if needed) and
+# fixes up a Qt4 executable using BundleUtilities so it is standalone
+# and can be drag-and-drop copied to another machine as long as all of
+# the system libraries are compatible. The executable will be fixed-up
+# at install time. <component> is the COMPONENT used for bundle fixup
+# and plugin installation. See documentation of FIXUP_QT4_BUNDLE.
#=============================================================================
# Copyright 2011 Mike McQuaid <mike@mikemcquaid.com>
diff --git a/Modules/Documentation.cmake b/Modules/Documentation.cmake
index d1c3afe479..be6aaea69d 100644
--- a/Modules/Documentation.cmake
+++ b/Modules/Documentation.cmake
@@ -1,6 +1,11 @@
-# - DocumentationVTK.cmake
-# This file provides support for the VTK documentation framework.
-# It relies on several tools (Doxygen, Perl, etc).
+#.rst:
+# Documentation
+# -------------
+#
+# DocumentationVTK.cmake
+#
+# This file provides support for the VTK documentation framework. It
+# relies on several tools (Doxygen, Perl, etc).
#=============================================================================
# Copyright 2001-2009 Kitware, Inc.
diff --git a/Modules/ExternalData.cmake b/Modules/ExternalData.cmake
index 50669bd294..86a42ae36a 100644
--- a/Modules/ExternalData.cmake
+++ b/Modules/ExternalData.cmake
@@ -1,146 +1,194 @@
-# - Manage data files stored outside source tree
-# Use this module to unambiguously reference data files stored outside the
-# source tree and fetch them at build time from arbitrary local and remote
-# content-addressed locations. Functions provided by this module recognize
-# arguments with the syntax "DATA{<name>}" as references to external data,
-# replace them with full paths to local copies of those data, and create build
-# rules to fetch and update the local copies.
+#.rst:
+# ExternalData
+# ------------
+#
+# Manage data files stored outside source tree
+#
+# Use this module to unambiguously reference data files stored outside
+# the source tree and fetch them at build time from arbitrary local and
+# remote content-addressed locations. Functions provided by this module
+# recognize arguments with the syntax "DATA{<name>}" as references to
+# external data, replace them with full paths to local copies of those
+# data, and create build rules to fetch and update the local copies.
#
# The DATA{} syntax is literal and the <name> is a full or relative path
-# within the source tree. The source tree must contain either a real data
-# file at <name> or a "content link" at <name><ext> containing a hash of the
-# real file using a hash algorithm corresponding to <ext>. For example, the
-# argument "DATA{img.png}" may be satisfied by either a real "img.png" file in
-# the current source directory or a "img.png.md5" file containing its MD5 sum.
-#
-# The 'ExternalData_Expand_Arguments' function evaluates DATA{} references
-# in its arguments and constructs a new list of arguments:
-# ExternalData_Expand_Arguments(
-# <target> # Name of data management target
-# <outVar> # Output variable
-# [args...] # Input arguments, DATA{} allowed
-# )
-# It replaces each DATA{} reference in an argument with the full path of a
-# real data file on disk that will exist after the <target> builds.
+# within the source tree. The source tree must contain either a real
+# data file at <name> or a "content link" at <name><ext> containing a
+# hash of the real file using a hash algorithm corresponding to <ext>.
+# For example, the argument "DATA{img.png}" may be satisfied by either a
+# real "img.png" file in the current source directory or a "img.png.md5"
+# file containing its MD5 sum.
+#
+# The 'ExternalData_Expand_Arguments' function evaluates DATA{}
+# references in its arguments and constructs a new list of arguments:
+#
+# ::
+#
+# ExternalData_Expand_Arguments(
+# <target> # Name of data management target
+# <outVar> # Output variable
+# [args...] # Input arguments, DATA{} allowed
+# )
+#
+# It replaces each DATA{} reference in an argument with the full path of
+# a real data file on disk that will exist after the <target> builds.
#
# The 'ExternalData_Add_Test' function wraps around the CMake add_test()
# command but supports DATA{} references in its arguments:
-# ExternalData_Add_Test(
-# <target> # Name of data management target
-# ... # Arguments of add_test(), DATA{} allowed
-# )
+#
+# ::
+#
+# ExternalData_Add_Test(
+# <target> # Name of data management target
+# ... # Arguments of add_test(), DATA{} allowed
+# )
+#
# It passes its arguments through ExternalData_Expand_Arguments and then
# invokes add_test() using the results.
#
-# The 'ExternalData_Add_Target' function creates a custom target to manage
-# local instances of data files stored externally:
-# ExternalData_Add_Target(
-# <target> # Name of data management target
-# )
-# It creates custom commands in the target as necessary to make data files
-# available for each DATA{} reference previously evaluated by other functions
-# provided by this module. A list of URL templates must be provided in the
-# variable ExternalData_URL_TEMPLATES using the placeholders "%(algo)" and
-# "%(hash)" in each template. Data fetch rules try each URL template in order
-# by substituting the hash algorithm name for "%(algo)" and the hash value for
-# "%(hash)".
+# The 'ExternalData_Add_Target' function creates a custom target to
+# manage local instances of data files stored externally:
+#
+# ::
+#
+# ExternalData_Add_Target(
+# <target> # Name of data management target
+# )
+#
+# It creates custom commands in the target as necessary to make data
+# files available for each DATA{} reference previously evaluated by
+# other functions provided by this module. A list of URL templates must
+# be provided in the variable ExternalData_URL_TEMPLATES using the
+# placeholders "%(algo)" and "%(hash)" in each template. Data fetch
+# rules try each URL template in order by substituting the hash
+# algorithm name for "%(algo)" and the hash value for "%(hash)".
#
# The following hash algorithms are supported:
-# %(algo) <ext> Description
-# ------- ----- -----------
-# MD5 .md5 Message-Digest Algorithm 5, RFC 1321
-# SHA1 .sha1 US Secure Hash Algorithm 1, RFC 3174
-# SHA224 .sha224 US Secure Hash Algorithms, RFC 4634
-# SHA256 .sha256 US Secure Hash Algorithms, RFC 4634
-# SHA384 .sha384 US Secure Hash Algorithms, RFC 4634
-# SHA512 .sha512 US Secure Hash Algorithms, RFC 4634
+#
+# ::
+#
+# %(algo) <ext> Description
+# ------- ----- -----------
+# MD5 .md5 Message-Digest Algorithm 5, RFC 1321
+# SHA1 .sha1 US Secure Hash Algorithm 1, RFC 3174
+# SHA224 .sha224 US Secure Hash Algorithms, RFC 4634
+# SHA256 .sha256 US Secure Hash Algorithms, RFC 4634
+# SHA384 .sha384 US Secure Hash Algorithms, RFC 4634
+# SHA512 .sha512 US Secure Hash Algorithms, RFC 4634
+#
# Note that the hashes are used only for unique data identification and
# download verification. This is not security software.
#
# Example usage:
-# include(ExternalData)
-# set(ExternalData_URL_TEMPLATES "file:///local/%(algo)/%(hash)"
-# "http://data.org/%(algo)/%(hash)")
-# ExternalData_Add_Test(MyData
-# NAME MyTest
-# COMMAND MyExe DATA{MyInput.png}
-# )
-# ExternalData_Add_Target(MyData)
-# When test "MyTest" runs the "DATA{MyInput.png}" argument will be replaced by
-# the full path to a real instance of the data file "MyInput.png" on disk. If
-# the source tree contains a content link such as "MyInput.png.md5" then the
-# "MyData" target creates a real "MyInput.png" in the build tree.
+#
+# ::
+#
+# include(ExternalData)
+# set(ExternalData_URL_TEMPLATES "file:///local/%(algo)/%(hash)"
+# "http://data.org/%(algo)/%(hash)")
+# ExternalData_Add_Test(MyData
+# NAME MyTest
+# COMMAND MyExe DATA{MyInput.png}
+# )
+# ExternalData_Add_Target(MyData)
+#
+# When test "MyTest" runs the "DATA{MyInput.png}" argument will be
+# replaced by the full path to a real instance of the data file
+# "MyInput.png" on disk. If the source tree contains a content link
+# such as "MyInput.png.md5" then the "MyData" target creates a real
+# "MyInput.png" in the build tree.
#
# The DATA{} syntax can be told to fetch a file series using the form
-# "DATA{<name>,:}", where the ":" is literal. If the source tree contains a
-# group of files or content links named like a series then a reference to one
-# member adds rules to fetch all of them. Although all members of a series
-# are fetched, only the file originally named by the DATA{} argument is
-# substituted for it. The default configuration recognizes file series names
-# ending with "#.ext", "_#.ext", ".#.ext", or "-#.ext" where "#" is a sequence
-# of decimal digits and ".ext" is any single extension. Configure it with a
-# regex that parses <number> and <suffix> parts from the end of <name>:
-# ExternalData_SERIES_PARSE = regex of the form (<number>)(<suffix>)$
+# "DATA{<name>,:}", where the ":" is literal. If the source tree
+# contains a group of files or content links named like a series then a
+# reference to one member adds rules to fetch all of them. Although all
+# members of a series are fetched, only the file originally named by the
+# DATA{} argument is substituted for it. The default configuration
+# recognizes file series names ending with "#.ext", "_#.ext", ".#.ext",
+# or "-#.ext" where "#" is a sequence of decimal digits and ".ext" is
+# any single extension. Configure it with a regex that parses <number>
+# and <suffix> parts from the end of <name>:
+#
+# ::
+#
+# ExternalData_SERIES_PARSE = regex of the form (<number>)(<suffix>)$
+#
# For more complicated cases set:
-# ExternalData_SERIES_PARSE = regex with at least two () groups
-# ExternalData_SERIES_PARSE_PREFIX = <prefix> regex group number, if any
-# ExternalData_SERIES_PARSE_NUMBER = <number> regex group number
-# ExternalData_SERIES_PARSE_SUFFIX = <suffix> regex group number
+#
+# ::
+#
+# ExternalData_SERIES_PARSE = regex with at least two () groups
+# ExternalData_SERIES_PARSE_PREFIX = <prefix> regex group number, if any
+# ExternalData_SERIES_PARSE_NUMBER = <number> regex group number
+# ExternalData_SERIES_PARSE_SUFFIX = <suffix> regex group number
+#
# Configure series number matching with a regex that matches the
# <number> part of series members named <prefix><number><suffix>:
-# ExternalData_SERIES_MATCH = regex matching <number> in all series members
+#
+# ::
+#
+# ExternalData_SERIES_MATCH = regex matching <number> in all series members
+#
# Note that the <suffix> of a series does not include a hash-algorithm
# extension.
#
-# The DATA{} syntax can alternatively match files associated with the named
-# file and contained in the same directory. Associated files may be specified
-# by options using the syntax DATA{<name>,<opt1>,<opt2>,...}. Each option may
-# specify one file by name or specify a regular expression to match file names
-# using the syntax REGEX:<regex>. For example, the arguments
-# DATA{MyData/MyInput.mhd,MyInput.img} # File pair
-# DATA{MyData/MyFrames00.png,REGEX:MyFrames[0-9]+\\.png} # Series
-# will pass MyInput.mha and MyFrames00.png on the command line but ensure
-# that the associated files are present next to them.
-#
-# The DATA{} syntax may reference a directory using a trailing slash and a
-# list of associated files. The form DATA{<name>/,<opt1>,<opt2>,...} adds
-# rules to fetch any files in the directory that match one of the associated
-# file options. For example, the argument DATA{MyDataDir/,REGEX:.*} will pass
-# the full path to a MyDataDir directory on the command line and ensure that
-# the directory contains files corresponding to every file or content link in
-# the MyDataDir source directory.
-#
-# The variable ExternalData_LINK_CONTENT may be set to the name of a supported
-# hash algorithm to enable automatic conversion of real data files referenced
-# by the DATA{} syntax into content links. For each such <file> a content
-# link named "<file><ext>" is created. The original file is renamed to the
-# form ".ExternalData_<algo>_<hash>" to stage it for future transmission to
-# one of the locations in the list of URL templates (by means outside the
-# scope of this module). The data fetch rule created for the content link
-# will use the staged object if it cannot be found using any URL template.
+# The DATA{} syntax can alternatively match files associated with the
+# named file and contained in the same directory. Associated files may
+# be specified by options using the syntax
+# DATA{<name>,<opt1>,<opt2>,...}. Each option may specify one file by
+# name or specify a regular expression to match file names using the
+# syntax REGEX:<regex>. For example, the arguments
+#
+# ::
+#
+# DATA{MyData/MyInput.mhd,MyInput.img} # File pair
+# DATA{MyData/MyFrames00.png,REGEX:MyFrames[0-9]+\\.png} # Series
+#
+# will pass MyInput.mha and MyFrames00.png on the command line but
+# ensure that the associated files are present next to them.
+#
+# The DATA{} syntax may reference a directory using a trailing slash and
+# a list of associated files. The form DATA{<name>/,<opt1>,<opt2>,...}
+# adds rules to fetch any files in the directory that match one of the
+# associated file options. For example, the argument
+# DATA{MyDataDir/,REGEX:.*} will pass the full path to a MyDataDir
+# directory on the command line and ensure that the directory contains
+# files corresponding to every file or content link in the MyDataDir
+# source directory.
+#
+# The variable ExternalData_LINK_CONTENT may be set to the name of a
+# supported hash algorithm to enable automatic conversion of real data
+# files referenced by the DATA{} syntax into content links. For each
+# such <file> a content link named "<file><ext>" is created. The
+# original file is renamed to the form ".ExternalData_<algo>_<hash>" to
+# stage it for future transmission to one of the locations in the list
+# of URL templates (by means outside the scope of this module). The
+# data fetch rule created for the content link will use the staged
+# object if it cannot be found using any URL template.
#
# The variable ExternalData_OBJECT_STORES may be set to a list of local
# directories that store objects using the layout <dir>/%(algo)/%(hash).
-# These directories will be searched first for a needed object. If the object
-# is not available in any store then it will be fetched remotely using the URL
-# templates and added to the first local store listed. If no stores are
-# specified the default is a location inside the build tree.
+# These directories will be searched first for a needed object. If the
+# object is not available in any store then it will be fetched remotely
+# using the URL templates and added to the first local store listed. If
+# no stores are specified the default is a location inside the build
+# tree.
#
# The variable ExternalData_SOURCE_ROOT may be set to the highest source
-# directory containing any path named by a DATA{} reference. The default is
-# CMAKE_SOURCE_DIR. ExternalData_SOURCE_ROOT and CMAKE_SOURCE_DIR must refer
-# to directories within a single source distribution (e.g. they come together
-# in one tarball).
-#
-# The variable ExternalData_BINARY_ROOT may be set to the directory to hold
-# the real data files named by expanded DATA{} references. The default is
-# CMAKE_BINARY_DIR. The directory layout will mirror that of content links
-# under ExternalData_SOURCE_ROOT.
-#
-# Variables ExternalData_TIMEOUT_INACTIVITY and ExternalData_TIMEOUT_ABSOLUTE
-# set the download inactivity and absolute timeouts, in seconds. The defaults
-# are 60 seconds and 300 seconds, respectively. Set either timeout to 0
-# seconds to disable enforcement.
+# directory containing any path named by a DATA{} reference. The
+# default is CMAKE_SOURCE_DIR. ExternalData_SOURCE_ROOT and
+# CMAKE_SOURCE_DIR must refer to directories within a single source
+# distribution (e.g. they come together in one tarball).
+#
+# The variable ExternalData_BINARY_ROOT may be set to the directory to
+# hold the real data files named by expanded DATA{} references. The
+# default is CMAKE_BINARY_DIR. The directory layout will mirror that of
+# content links under ExternalData_SOURCE_ROOT.
+#
+# Variables ExternalData_TIMEOUT_INACTIVITY and
+# ExternalData_TIMEOUT_ABSOLUTE set the download inactivity and absolute
+# timeouts, in seconds. The defaults are 60 seconds and 300 seconds,
+# respectively. Set either timeout to 0 seconds to disable enforcement.
#=============================================================================
# Copyright 2010-2013 Kitware, Inc.
diff --git a/Modules/ExternalProject.cmake b/Modules/ExternalProject.cmake
index 0781ea1469..d734012acc 100644
--- a/Modules/ExternalProject.cmake
+++ b/Modules/ExternalProject.cmake
@@ -1,163 +1,192 @@
-# - Create custom targets to build projects in external trees
+#.rst:
+# ExternalProject
+# ---------------
+#
+# Create custom targets to build projects in external trees
+#
# The 'ExternalProject_Add' function creates a custom target to drive
# download, update/patch, configure, build, install and test steps of an
# external project:
-# ExternalProject_Add(<name> # Name for custom target
-# [DEPENDS projects...] # Targets on which the project depends
-# [PREFIX dir] # Root dir for entire project
-# [LIST_SEPARATOR sep] # Sep to be replaced by ; in cmd lines
-# [TMP_DIR dir] # Directory to store temporary files
-# [STAMP_DIR dir] # Directory to store step timestamps
-# #--Download step--------------
-# [DOWNLOAD_NAME fname] # File name to store (if not end of URL)
-# [DOWNLOAD_DIR dir] # Directory to store downloaded files
-# [DOWNLOAD_COMMAND cmd...] # Command to download source tree
-# [CVS_REPOSITORY cvsroot] # CVSROOT of CVS repository
-# [CVS_MODULE mod] # Module to checkout from CVS repo
-# [CVS_TAG tag] # Tag to checkout from CVS repo
-# [SVN_REPOSITORY url] # URL of Subversion repo
-# [SVN_REVISION rev] # Revision to checkout from Subversion repo
-# [SVN_USERNAME john ] # Username for Subversion checkout and update
-# [SVN_PASSWORD doe ] # Password for Subversion checkout and update
-# [SVN_TRUST_CERT 1 ] # Trust the Subversion server site certificate
-# [GIT_REPOSITORY url] # URL of git repo
-# [GIT_TAG tag] # Git branch name, commit id or tag
-# [HG_REPOSITORY url] # URL of mercurial repo
-# [HG_TAG tag] # Mercurial branch name, commit id or tag
-# [URL /.../src.tgz] # Full path or URL of source
-# [URL_HASH ALGO=value] # Hash of file at URL
-# [URL_MD5 md5] # Equivalent to URL_HASH MD5=md5
-# [TLS_VERIFY bool] # Should certificate for https be checked
-# [TLS_CAINFO file] # Path to a certificate authority file
-# [TIMEOUT seconds] # Time allowed for file download operations
-# #--Update/Patch step----------
-# [UPDATE_COMMAND cmd...] # Source work-tree update command
-# [PATCH_COMMAND cmd...] # Command to patch downloaded source
-# #--Configure step-------------
-# [SOURCE_DIR dir] # Source dir to be used for build
-# [CONFIGURE_COMMAND cmd...] # Build tree configuration command
-# [CMAKE_COMMAND /.../cmake] # Specify alternative cmake executable
-# [CMAKE_GENERATOR gen] # Specify generator for native build
-# [CMAKE_GENERATOR_TOOLSET t] # Generator-specific toolset name
-# [CMAKE_ARGS args...] # Arguments to CMake command line
-# [CMAKE_CACHE_ARGS args...] # Initial cache arguments, of the form -Dvar:string=on
-# #--Build step-----------------
-# [BINARY_DIR dir] # Specify build dir location
-# [BUILD_COMMAND cmd...] # Command to drive the native build
-# [BUILD_IN_SOURCE 1] # Use source dir for build dir
-# #--Install step---------------
-# [INSTALL_DIR dir] # Installation prefix
-# [INSTALL_COMMAND cmd...] # Command to drive install after build
-# #--Test step------------------
-# [TEST_BEFORE_INSTALL 1] # Add test step executed before install step
-# [TEST_AFTER_INSTALL 1] # Add test step executed after install step
-# [TEST_COMMAND cmd...] # Command to drive test
-# #--Output logging-------------
-# [LOG_DOWNLOAD 1] # Wrap download in script to log output
-# [LOG_UPDATE 1] # Wrap update in script to log output
-# [LOG_CONFIGURE 1] # Wrap configure in script to log output
-# [LOG_BUILD 1] # Wrap build in script to log output
-# [LOG_TEST 1] # Wrap test in script to log output
-# [LOG_INSTALL 1] # Wrap install in script to log output
-# #--Custom targets-------------
-# [STEP_TARGETS st1 st2 ...] # Generate custom targets for these steps
-# )
+#
+# ::
+#
+# ExternalProject_Add(<name> # Name for custom target
+# [DEPENDS projects...] # Targets on which the project depends
+# [PREFIX dir] # Root dir for entire project
+# [LIST_SEPARATOR sep] # Sep to be replaced by ; in cmd lines
+# [TMP_DIR dir] # Directory to store temporary files
+# [STAMP_DIR dir] # Directory to store step timestamps
+# #--Download step--------------
+# [DOWNLOAD_NAME fname] # File name to store (if not end of URL)
+# [DOWNLOAD_DIR dir] # Directory to store downloaded files
+# [DOWNLOAD_COMMAND cmd...] # Command to download source tree
+# [CVS_REPOSITORY cvsroot] # CVSROOT of CVS repository
+# [CVS_MODULE mod] # Module to checkout from CVS repo
+# [CVS_TAG tag] # Tag to checkout from CVS repo
+# [SVN_REPOSITORY url] # URL of Subversion repo
+# [SVN_REVISION rev] # Revision to checkout from Subversion repo
+# [SVN_USERNAME john ] # Username for Subversion checkout and update
+# [SVN_PASSWORD doe ] # Password for Subversion checkout and update
+# [SVN_TRUST_CERT 1 ] # Trust the Subversion server site certificate
+# [GIT_REPOSITORY url] # URL of git repo
+# [GIT_TAG tag] # Git branch name, commit id or tag
+# [HG_REPOSITORY url] # URL of mercurial repo
+# [HG_TAG tag] # Mercurial branch name, commit id or tag
+# [URL /.../src.tgz] # Full path or URL of source
+# [URL_HASH ALGO=value] # Hash of file at URL
+# [URL_MD5 md5] # Equivalent to URL_HASH MD5=md5
+# [TLS_VERIFY bool] # Should certificate for https be checked
+# [TLS_CAINFO file] # Path to a certificate authority file
+# [TIMEOUT seconds] # Time allowed for file download operations
+# #--Update/Patch step----------
+# [UPDATE_COMMAND cmd...] # Source work-tree update command
+# [PATCH_COMMAND cmd...] # Command to patch downloaded source
+# #--Configure step-------------
+# [SOURCE_DIR dir] # Source dir to be used for build
+# [CONFIGURE_COMMAND cmd...] # Build tree configuration command
+# [CMAKE_COMMAND /.../cmake] # Specify alternative cmake executable
+# [CMAKE_GENERATOR gen] # Specify generator for native build
+# [CMAKE_GENERATOR_TOOLSET t] # Generator-specific toolset name
+# [CMAKE_ARGS args...] # Arguments to CMake command line
+# [CMAKE_CACHE_ARGS args...] # Initial cache arguments, of the form -Dvar:string=on
+# #--Build step-----------------
+# [BINARY_DIR dir] # Specify build dir location
+# [BUILD_COMMAND cmd...] # Command to drive the native build
+# [BUILD_IN_SOURCE 1] # Use source dir for build dir
+# #--Install step---------------
+# [INSTALL_DIR dir] # Installation prefix
+# [INSTALL_COMMAND cmd...] # Command to drive install after build
+# #--Test step------------------
+# [TEST_BEFORE_INSTALL 1] # Add test step executed before install step
+# [TEST_AFTER_INSTALL 1] # Add test step executed after install step
+# [TEST_COMMAND cmd...] # Command to drive test
+# #--Output logging-------------
+# [LOG_DOWNLOAD 1] # Wrap download in script to log output
+# [LOG_UPDATE 1] # Wrap update in script to log output
+# [LOG_CONFIGURE 1] # Wrap configure in script to log output
+# [LOG_BUILD 1] # Wrap build in script to log output
+# [LOG_TEST 1] # Wrap test in script to log output
+# [LOG_INSTALL 1] # Wrap install in script to log output
+# #--Custom targets-------------
+# [STEP_TARGETS st1 st2 ...] # Generate custom targets for these steps
+# )
+#
# The *_DIR options specify directories for the project, with default
-# directories computed as follows.
-# If the PREFIX option is given to ExternalProject_Add() or the EP_PREFIX
-# directory property is set, then an external project is built and installed
-# under the specified prefix:
-# TMP_DIR = <prefix>/tmp
-# STAMP_DIR = <prefix>/src/<name>-stamp
-# DOWNLOAD_DIR = <prefix>/src
-# SOURCE_DIR = <prefix>/src/<name>
-# BINARY_DIR = <prefix>/src/<name>-build
-# INSTALL_DIR = <prefix>
-# Otherwise, if the EP_BASE directory property is set then components
-# of an external project are stored under the specified base:
-# TMP_DIR = <base>/tmp/<name>
-# STAMP_DIR = <base>/Stamp/<name>
-# DOWNLOAD_DIR = <base>/Download/<name>
-# SOURCE_DIR = <base>/Source/<name>
-# BINARY_DIR = <base>/Build/<name>
-# INSTALL_DIR = <base>/Install/<name>
-# If no PREFIX, EP_PREFIX, or EP_BASE is specified then the default
-# is to set PREFIX to "<name>-prefix".
-# Relative paths are interpreted with respect to the build directory
-# corresponding to the source directory in which ExternalProject_Add is
-# invoked.
+# directories computed as follows. If the PREFIX option is given to
+# ExternalProject_Add() or the EP_PREFIX directory property is set, then
+# an external project is built and installed under the specified prefix:
+#
+# ::
+#
+# TMP_DIR = <prefix>/tmp
+# STAMP_DIR = <prefix>/src/<name>-stamp
+# DOWNLOAD_DIR = <prefix>/src
+# SOURCE_DIR = <prefix>/src/<name>
+# BINARY_DIR = <prefix>/src/<name>-build
+# INSTALL_DIR = <prefix>
+#
+# Otherwise, if the EP_BASE directory property is set then components of
+# an external project are stored under the specified base:
+#
+# ::
+#
+# TMP_DIR = <base>/tmp/<name>
+# STAMP_DIR = <base>/Stamp/<name>
+# DOWNLOAD_DIR = <base>/Download/<name>
+# SOURCE_DIR = <base>/Source/<name>
+# BINARY_DIR = <base>/Build/<name>
+# INSTALL_DIR = <base>/Install/<name>
+#
+# If no PREFIX, EP_PREFIX, or EP_BASE is specified then the default is
+# to set PREFIX to "<name>-prefix". Relative paths are interpreted with
+# respect to the build directory corresponding to the source directory
+# in which ExternalProject_Add is invoked.
#
# If SOURCE_DIR is explicitly set to an existing directory the project
-# will be built from it.
-# Otherwise a download step must be specified using one of the
-# DOWNLOAD_COMMAND, CVS_*, SVN_*, or URL options.
-# The URL option may refer locally to a directory or source tarball,
-# or refer to a remote tarball (e.g. http://.../src.tgz).
+# will be built from it. Otherwise a download step must be specified
+# using one of the DOWNLOAD_COMMAND, CVS_*, SVN_*, or URL options. The
+# URL option may refer locally to a directory or source tarball, or
+# refer to a remote tarball (e.g. http://.../src.tgz).
+#
+# The 'ExternalProject_Add_Step' function adds a custom step to an
+# external project:
#
-# The 'ExternalProject_Add_Step' function adds a custom step to an external
-# project:
-# ExternalProject_Add_Step(<name> <step> # Names of project and custom step
-# [COMMAND cmd...] # Command line invoked by this step
-# [COMMENT "text..."] # Text printed when step executes
-# [DEPENDEES steps...] # Steps on which this step depends
-# [DEPENDERS steps...] # Steps that depend on this step
-# [DEPENDS files...] # Files on which this step depends
-# [ALWAYS 1] # No stamp file, step always runs
-# [WORKING_DIRECTORY dir] # Working directory for command
-# [LOG 1] # Wrap step in script to log output
-# )
-# The command line, comment, and working directory of every standard
-# and custom step is processed to replace tokens
-# <SOURCE_DIR>,
-# <BINARY_DIR>,
-# <INSTALL_DIR>,
-# and <TMP_DIR>
-# with corresponding property values.
+# ::
+#
+# ExternalProject_Add_Step(<name> <step> # Names of project and custom step
+# [COMMAND cmd...] # Command line invoked by this step
+# [COMMENT "text..."] # Text printed when step executes
+# [DEPENDEES steps...] # Steps on which this step depends
+# [DEPENDERS steps...] # Steps that depend on this step
+# [DEPENDS files...] # Files on which this step depends
+# [ALWAYS 1] # No stamp file, step always runs
+# [WORKING_DIRECTORY dir] # Working directory for command
+# [LOG 1] # Wrap step in script to log output
+# )
+#
+# The command line, comment, and working directory of every standard and
+# custom step is processed to replace tokens <SOURCE_DIR>, <BINARY_DIR>,
+# <INSTALL_DIR>, and <TMP_DIR> with corresponding property values.
#
# Any builtin step that specifies a "<step>_COMMAND cmd..." or custom
# step that specifies a "COMMAND cmd..." may specify additional command
-# lines using the form "COMMAND cmd...". At build time the commands will
-# be executed in order and aborted if any one fails. For example:
-# ... BUILD_COMMAND make COMMAND echo done ...
+# lines using the form "COMMAND cmd...". At build time the commands
+# will be executed in order and aborted if any one fails. For example:
+#
+# ::
+#
+# ... BUILD_COMMAND make COMMAND echo done ...
+#
# specifies to run "make" and then "echo done" during the build step.
-# Whether the current working directory is preserved between commands
-# is not defined. Behavior of shell operators like "&&" is not defined.
+# Whether the current working directory is preserved between commands is
+# not defined. Behavior of shell operators like "&&" is not defined.
#
# The 'ExternalProject_Get_Property' function retrieves external project
# target properties:
-# ExternalProject_Get_Property(<name> [prop1 [prop2 [...]]])
-# It stores property values in variables of the same name.
-# Property names correspond to the keyword argument names of
+#
+# ::
+#
+# ExternalProject_Get_Property(<name> [prop1 [prop2 [...]]])
+#
+# It stores property values in variables of the same name. Property
+# names correspond to the keyword argument names of
# 'ExternalProject_Add'.
#
-# The 'ExternalProject_Add_StepTargets' function generates custom targets for
-# the steps listed:
-# ExternalProject_Add_StepTargets(<name> [step1 [step2 [...]]])
+# The 'ExternalProject_Add_StepTargets' function generates custom
+# targets for the steps listed:
+#
+# ::
+#
+# ExternalProject_Add_StepTargets(<name> [step1 [step2 [...]]])
#
-# If STEP_TARGETS is set then ExternalProject_Add_StepTargets is automatically
-# called at the end of matching calls to ExternalProject_Add_Step. Pass
-# STEP_TARGETS explicitly to individual ExternalProject_Add calls, or
-# implicitly to all ExternalProject_Add calls by setting the directory property
-# EP_STEP_TARGETS.
+#
+#
+# If STEP_TARGETS is set then ExternalProject_Add_StepTargets is
+# automatically called at the end of matching calls to
+# ExternalProject_Add_Step. Pass STEP_TARGETS explicitly to individual
+# ExternalProject_Add calls, or implicitly to all ExternalProject_Add
+# calls by setting the directory property EP_STEP_TARGETS.
#
# If STEP_TARGETS is not set, clients may still manually call
# ExternalProject_Add_StepTargets after calling ExternalProject_Add or
# ExternalProject_Add_Step.
#
# This functionality is provided to make it easy to drive the steps
-# independently of each other by specifying targets on build command lines.
-# For example, you may be submitting to a sub-project based dashboard, where
-# you want to drive the configure portion of the build, then submit to the
-# dashboard, followed by the build portion, followed by tests. If you invoke
-# a custom target that depends on a step halfway through the step dependency
-# chain, then all the previous steps will also run to ensure everything is
-# up to date.
+# independently of each other by specifying targets on build command
+# lines. For example, you may be submitting to a sub-project based
+# dashboard, where you want to drive the configure portion of the build,
+# then submit to the dashboard, followed by the build portion, followed
+# by tests. If you invoke a custom target that depends on a step
+# halfway through the step dependency chain, then all the previous steps
+# will also run to ensure everything is up to date.
+#
+# For example, to drive configure, build and test steps independently
+# for each ExternalProject_Add call in your project, write the following
+# line prior to any ExternalProject_Add calls in your CMakeLists file:
#
-# For example, to drive configure, build and test steps independently for each
-# ExternalProject_Add call in your project, write the following line prior to
-# any ExternalProject_Add calls in your CMakeLists file:
+# ::
#
-# set_property(DIRECTORY PROPERTY EP_STEP_TARGETS configure build test)
+# set_property(DIRECTORY PROPERTY EP_STEP_TARGETS configure build test)
#=============================================================================
# Copyright 2008-2012 Kitware, Inc.
diff --git a/Modules/FeatureSummary.cmake b/Modules/FeatureSummary.cmake
index 5d98ac3cf0..b0f8e1653f 100644
--- a/Modules/FeatureSummary.cmake
+++ b/Modules/FeatureSummary.cmake
@@ -1,167 +1,244 @@
-# - Macros for generating a summary of enabled/disabled features
+#.rst:
+# FeatureSummary
+# --------------
#
-# This module provides the macros feature_summary(), set_package_properties() and
-# add_feature_info().
-# For compatibility it also still provides set_package_info(), set_feature_info(),
+# Macros for generating a summary of enabled/disabled features
+#
+#
+#
+# This module provides the macros feature_summary(),
+# set_package_properties() and add_feature_info(). For compatibility it
+# also still provides set_package_info(), set_feature_info(),
# print_enabled_features() and print_disabled_features().
#
# These macros can be used to generate a summary of enabled and disabled
# packages and/or feature for a build tree:
#
-# -- The following OPTIONAL packages have been found:
-# LibXml2 (required version >= 2.4) , XML processing library. , <http://xmlsoft.org>
-# * Enables HTML-import in MyWordProcessor
-# * Enables odt-export in MyWordProcessor
-# PNG , A PNG image library. , <http://www.libpng.org/pub/png/>
-# * Enables saving screenshots
-# -- The following OPTIONAL packages have not been found:
-# Lua51 , The Lua scripting language. , <http://www.lua.org>
-# * Enables macros in MyWordProcessor
-# Foo , Foo provides cool stuff.
-#
-#
-# FEATURE_SUMMARY( [FILENAME <file>]
-# [APPEND]
-# [VAR <variable_name>]
-# [INCLUDE_QUIET_PACKAGES]
-# [FATAL_ON_MISSING_REQUIRED_PACKAGES]
-# [DESCRIPTION "Found packages:"]
-# WHAT (ALL | PACKAGES_FOUND | PACKAGES_NOT_FOUND
-# | ENABLED_FEATURES | DISABLED_FEATURES]
-# )
-#
-# The FEATURE_SUMMARY() macro can be used to print information about enabled
-# or disabled packages or features of a project.
-# By default, only the names of the features/packages will be printed and their
-# required version when one was specified. Use SET_PACKAGE_PROPERTIES() to add more
-# useful information, like e.g. a download URL for the respective package or their
-# purpose in the project.
-#
-# The WHAT option is the only mandatory option. Here you specify what information
-# will be printed:
-# ALL: print everything
-# ENABLED_FEATURES: the list of all features which are enabled
-# DISABLED_FEATURES: the list of all features which are disabled
-# PACKAGES_FOUND: the list of all packages which have been found
-# PACKAGES_NOT_FOUND: the list of all packages which have not been found
-# OPTIONAL_PACKAGES_FOUND: only those packages which have been found which have the type OPTIONAL
-# OPTIONAL_PACKAGES_NOT_FOUND: only those packages which have not been found which have the type OPTIONAL
-# RECOMMENDED_PACKAGES_FOUND: only those packages which have been found which have the type RECOMMENDED
-# RECOMMENDED_PACKAGES_NOT_FOUND: only those packages which have not been found which have the type RECOMMENDED
-# REQUIRED_PACKAGES_FOUND: only those packages which have been found which have the type REQUIRED
-# REQUIRED_PACKAGES_NOT_FOUND: only those packages which have not been found which have the type REQUIRED
-# RUNTIME_PACKAGES_FOUND: only those packages which have been found which have the type RUNTIME
-# RUNTIME_PACKAGES_NOT_FOUND: only those packages which have not been found which have the type RUNTIME
-#
-# If a FILENAME is given, the information is printed into this file. If APPEND
-# is used, it is appended to this file, otherwise the file is overwritten if
-# it already existed.
-# If the VAR option is used, the information is "printed" into the specified
-# variable.
-# If FILENAME is not used, the information is printed to the terminal.
-# Using the DESCRIPTION option a description or headline can be set which will
-# be printed above the actual content.
-# If INCLUDE_QUIET_PACKAGES is given, packages which have been searched with find_package(... QUIET) will
-# also be listed. By default they are skipped.
-# If FATAL_ON_MISSING_REQUIRED_PACKAGES is given, CMake will abort if a package which is marked as REQUIRED
-# has not been found.
+# ::
+#
+# -- The following OPTIONAL packages have been found:
+# LibXml2 (required version >= 2.4) , XML processing library. , <http://xmlsoft.org>
+# * Enables HTML-import in MyWordProcessor
+# * Enables odt-export in MyWordProcessor
+# PNG , A PNG image library. , <http://www.libpng.org/pub/png/>
+# * Enables saving screenshots
+# -- The following OPTIONAL packages have not been found:
+# Lua51 , The Lua scripting language. , <http://www.lua.org>
+# * Enables macros in MyWordProcessor
+# Foo , Foo provides cool stuff.
+#
+#
+#
+#
+#
+# ::
+#
+# FEATURE_SUMMARY( [FILENAME <file>]
+# [APPEND]
+# [VAR <variable_name>]
+# [INCLUDE_QUIET_PACKAGES]
+# [FATAL_ON_MISSING_REQUIRED_PACKAGES]
+# [DESCRIPTION "Found packages:"]
+# WHAT (ALL | PACKAGES_FOUND | PACKAGES_NOT_FOUND
+# | ENABLED_FEATURES | DISABLED_FEATURES]
+# )
+#
+#
+#
+# The FEATURE_SUMMARY() macro can be used to print information about
+# enabled or disabled packages or features of a project. By default,
+# only the names of the features/packages will be printed and their
+# required version when one was specified. Use SET_PACKAGE_PROPERTIES()
+# to add more useful information, like e.g. a download URL for the
+# respective package or their purpose in the project.
+#
+# The WHAT option is the only mandatory option. Here you specify what
+# information will be printed:
+#
+# ::
+#
+# ALL: print everything
+# ENABLED_FEATURES: the list of all features which are enabled
+# DISABLED_FEATURES: the list of all features which are disabled
+# PACKAGES_FOUND: the list of all packages which have been found
+# PACKAGES_NOT_FOUND: the list of all packages which have not been found
+# OPTIONAL_PACKAGES_FOUND: only those packages which have been found which have the type OPTIONAL
+# OPTIONAL_PACKAGES_NOT_FOUND: only those packages which have not been found which have the type OPTIONAL
+# RECOMMENDED_PACKAGES_FOUND: only those packages which have been found which have the type RECOMMENDED
+# RECOMMENDED_PACKAGES_NOT_FOUND: only those packages which have not been found which have the type RECOMMENDED
+# REQUIRED_PACKAGES_FOUND: only those packages which have been found which have the type REQUIRED
+# REQUIRED_PACKAGES_NOT_FOUND: only those packages which have not been found which have the type REQUIRED
+# RUNTIME_PACKAGES_FOUND: only those packages which have been found which have the type RUNTIME
+# RUNTIME_PACKAGES_NOT_FOUND: only those packages which have not been found which have the type RUNTIME
+#
+#
+#
+# If a FILENAME is given, the information is printed into this file. If
+# APPEND is used, it is appended to this file, otherwise the file is
+# overwritten if it already existed. If the VAR option is used, the
+# information is "printed" into the specified variable. If FILENAME is
+# not used, the information is printed to the terminal. Using the
+# DESCRIPTION option a description or headline can be set which will be
+# printed above the actual content. If INCLUDE_QUIET_PACKAGES is given,
+# packages which have been searched with find_package(... QUIET) will
+# also be listed. By default they are skipped. If
+# FATAL_ON_MISSING_REQUIRED_PACKAGES is given, CMake will abort if a
+# package which is marked as REQUIRED has not been found.
#
# Example 1, append everything to a file:
-# feature_summary(WHAT ALL
-# FILENAME ${CMAKE_BINARY_DIR}/all.log APPEND)
-#
-# Example 2, print the enabled features into the variable enabledFeaturesText, including QUIET packages:
-# feature_summary(WHAT ENABLED_FEATURES
-# INCLUDE_QUIET_PACKAGES
-# DESCRIPTION "Enabled Features:"
-# VAR enabledFeaturesText)
-# message(STATUS "${enabledFeaturesText}")
-#
-#
-# SET_PACKAGE_PROPERTIES(<name> PROPERTIES [ URL <url> ]
-# [ DESCRIPTION <description> ]
-# [ TYPE (RUNTIME|OPTIONAL|RECOMMENDED|REQUIRED) ]
-# [ PURPOSE <purpose> ]
-# )
-#
-# Use this macro to set up information about the named package, which can
-# then be displayed via FEATURE_SUMMARY().
-# This can be done either directly in the Find-module or in the project
-# which uses the module after the find_package() call.
-# The features for which information can be set are added automatically by the
-# find_package() command.
-#
-# URL: this should be the homepage of the package, or something similar. Ideally this is set
-# already directly in the Find-module.
-#
-# DESCRIPTION: A short description what that package is, at most one sentence.
+#
+# ::
+#
+# feature_summary(WHAT ALL
+# FILENAME ${CMAKE_BINARY_DIR}/all.log APPEND)
+#
+#
+#
+# Example 2, print the enabled features into the variable
+# enabledFeaturesText, including QUIET packages:
+#
+# ::
+#
+# feature_summary(WHAT ENABLED_FEATURES
+# INCLUDE_QUIET_PACKAGES
+# DESCRIPTION "Enabled Features:"
+# VAR enabledFeaturesText)
+# message(STATUS "${enabledFeaturesText}")
+#
+#
+#
+#
+#
+# ::
+#
+# SET_PACKAGE_PROPERTIES(<name> PROPERTIES [ URL <url> ]
+# [ DESCRIPTION <description> ]
+# [ TYPE (RUNTIME|OPTIONAL|RECOMMENDED|REQUIRED) ]
+# [ PURPOSE <purpose> ]
+# )
+#
+#
+#
+# Use this macro to set up information about the named package, which
+# can then be displayed via FEATURE_SUMMARY(). This can be done either
+# directly in the Find-module or in the project which uses the module
+# after the find_package() call. The features for which information can
+# be set are added automatically by the find_package() command.
+#
+# URL: this should be the homepage of the package, or something similar.
# Ideally this is set already directly in the Find-module.
#
-# TYPE: What type of dependency has the using project on that package. Default is OPTIONAL.
-# In this case it is a package which can be used by the project when available at buildtime,
-# but it also work without. RECOMMENDED is similar to OPTIONAL, i.e. the project will build
-# if the package is not present, but the functionality of the resulting binaries will be severly
-# limited. If a REQUIRED package is not available at buildtime, the project may not even build. This
-# can be combined with the FATAL_ON_MISSING_REQUIRED_PACKAGES argument for feature_summary().
-# Last, a RUNTIME package is a package which is actually not used at all during the build, but
-# which is required for actually running the resulting binaries. So if such a package is missing,
-# the project can still be built, but it may not work later on. If set_package_properties() is called
-# multiple times for the same package with different TYPEs, the TYPE is only changed to higher
-# TYPEs ( RUNTIME < OPTIONAL < RECOMMENDED < REQUIRED ), lower TYPEs are ignored.
-# The TYPE property is project-specific, so it cannot be set by the Find-module, but must be set in the project.
-#
-# PURPOSE: This describes which features this package enables in the project, i.e. it tells the user
-# what functionality he gets in the resulting binaries.
-# If set_package_properties() is called multiple times for a package, all PURPOSE properties are appended
-# to a list of purposes of the package in the project.
-# As the TYPE property, also the PURPOSE property
-# is project-specific, so it cannot be set by the Find-module, but must be set in the project.
+# DESCRIPTION: A short description what that package is, at most one
+# sentence. Ideally this is set already directly in the Find-module.
+#
+# TYPE: What type of dependency has the using project on that package.
+# Default is OPTIONAL. In this case it is a package which can be used
+# by the project when available at buildtime, but it also work without.
+# RECOMMENDED is similar to OPTIONAL, i.e. the project will build if
+# the package is not present, but the functionality of the resulting
+# binaries will be severly limited. If a REQUIRED package is not
+# available at buildtime, the project may not even build. This can be
+# combined with the FATAL_ON_MISSING_REQUIRED_PACKAGES argument for
+# feature_summary(). Last, a RUNTIME package is a package which is
+# actually not used at all during the build, but which is required for
+# actually running the resulting binaries. So if such a package is
+# missing, the project can still be built, but it may not work later on.
+# If set_package_properties() is called multiple times for the same
+# package with different TYPEs, the TYPE is only changed to higher TYPEs
+# ( RUNTIME < OPTIONAL < RECOMMENDED < REQUIRED ), lower TYPEs are
+# ignored. The TYPE property is project-specific, so it cannot be set
+# by the Find-module, but must be set in the project.
+#
+# PURPOSE: This describes which features this package enables in the
+# project, i.e. it tells the user what functionality he gets in the
+# resulting binaries. If set_package_properties() is called multiple
+# times for a package, all PURPOSE properties are appended to a list of
+# purposes of the package in the project. As the TYPE property, also
+# the PURPOSE property is project-specific, so it cannot be set by the
+# Find-module, but must be set in the project.
+#
#
#
# Example for setting the info for a package:
-# find_package(LibXml2)
-# set_package_properties(LibXml2 PROPERTIES DESCRIPTION "A XML processing library."
-# URL "http://xmlsoft.org/")
-#
-# set_package_properties(LibXml2 PROPERTIES TYPE RECOMMENDED
-# PURPOSE "Enables HTML-import in MyWordProcessor")
-# ...
-# set_package_properties(LibXml2 PROPERTIES TYPE OPTIONAL
-# PURPOSE "Enables odt-export in MyWordProcessor")
-#
-# find_package(DBUS)
-# set_package_properties(DBUS PROPERTIES TYPE RUNTIME
-# PURPOSE "Necessary to disable the screensaver during a presentation" )
-#
-# ADD_FEATURE_INFO(<name> <enabled> <description>)
-# Use this macro to add information about a feature with the given <name>.
-# <enabled> contains whether this feature is enabled or not, <description>
-# is a text describing the feature.
-# The information can be displayed using feature_summary() for ENABLED_FEATURES
-# and DISABLED_FEATURES respectively.
+#
+# ::
+#
+# find_package(LibXml2)
+# set_package_properties(LibXml2 PROPERTIES DESCRIPTION "A XML processing library."
+# URL "http://xmlsoft.org/")
+#
+#
+#
+# ::
+#
+# set_package_properties(LibXml2 PROPERTIES TYPE RECOMMENDED
+# PURPOSE "Enables HTML-import in MyWordProcessor")
+# ...
+# set_package_properties(LibXml2 PROPERTIES TYPE OPTIONAL
+# PURPOSE "Enables odt-export in MyWordProcessor")
+#
+#
+#
+# ::
+#
+# find_package(DBUS)
+# set_package_properties(DBUS PROPERTIES TYPE RUNTIME
+# PURPOSE "Necessary to disable the screensaver during a presentation" )
+#
+#
+#
+# ::
+#
+# ADD_FEATURE_INFO(<name> <enabled> <description>)
+#
+# Use this macro to add information about a feature with the given
+# <name>. <enabled> contains whether this feature is enabled or not,
+# <description> is a text describing the feature. The information can
+# be displayed using feature_summary() for ENABLED_FEATURES and
+# DISABLED_FEATURES respectively.
#
# Example for setting the info for a feature:
-# option(WITH_FOO "Help for foo" ON)
-# add_feature_info(Foo WITH_FOO "The Foo feature provides very cool stuff.")
#
+# ::
+#
+# option(WITH_FOO "Help for foo" ON)
+# add_feature_info(Foo WITH_FOO "The Foo feature provides very cool stuff.")
+#
+#
+#
+#
+#
+# The following macros are provided for compatibility with previous
+# CMake versions:
+#
+# ::
+#
+# SET_PACKAGE_INFO(<name> <description> [<url> [<purpose>] ] )
+#
+# Use this macro to set up information about the named package, which
+# can then be displayed via FEATURE_SUMMARY(). This can be done either
+# directly in the Find-module or in the project which uses the module
+# after the find_package() call. The features for which information can
+# be set are added automatically by the find_package() command.
+#
+# ::
+#
+# PRINT_ENABLED_FEATURES()
+#
+# Does the same as FEATURE_SUMMARY(WHAT ENABLED_FEATURES DESCRIPTION
+# "Enabled features:")
+#
+# ::
#
-# The following macros are provided for compatibility with previous CMake versions:
+# PRINT_DISABLED_FEATURES()
#
-# SET_PACKAGE_INFO(<name> <description> [<url> [<purpose>] ] )
-# Use this macro to set up information about the named package, which can
-# then be displayed via FEATURE_SUMMARY().
-# This can be done either directly in the Find-module or in the project
-# which uses the module after the find_package() call.
-# The features for which information can be set are added automatically by the
-# find_package() command.
+# Does the same as FEATURE_SUMMARY(WHAT DISABLED_FEATURES DESCRIPTION
+# "Disabled features:")
#
-# PRINT_ENABLED_FEATURES()
-# Does the same as FEATURE_SUMMARY(WHAT ENABLED_FEATURES DESCRIPTION "Enabled features:")
+# ::
#
-# PRINT_DISABLED_FEATURES()
-# Does the same as FEATURE_SUMMARY(WHAT DISABLED_FEATURES DESCRIPTION "Disabled features:")
+# SET_FEATURE_INFO(<name> <description> [<url>] )
#
-# SET_FEATURE_INFO(<name> <description> [<url>] )
# Does the same as SET_PACKAGE_INFO(<name> <description> <url> )
#=============================================================================
diff --git a/Modules/FindALSA.cmake b/Modules/FindALSA.cmake
index 60b0f56e61..5c30eb9232 100644
--- a/Modules/FindALSA.cmake
+++ b/Modules/FindALSA.cmake
@@ -1,15 +1,25 @@
-# - Find alsa
+#.rst:
+# FindALSA
+# --------
+#
+# Find alsa
+#
# Find the alsa libraries (asound)
#
-# This module defines the following variables:
-# ALSA_FOUND - True if ALSA_INCLUDE_DIR & ALSA_LIBRARY are found
-# ALSA_LIBRARIES - Set when ALSA_LIBRARY is found
-# ALSA_INCLUDE_DIRS - Set when ALSA_INCLUDE_DIR is found
+# ::
+#
+# This module defines the following variables:
+# ALSA_FOUND - True if ALSA_INCLUDE_DIR & ALSA_LIBRARY are found
+# ALSA_LIBRARIES - Set when ALSA_LIBRARY is found
+# ALSA_INCLUDE_DIRS - Set when ALSA_INCLUDE_DIR is found
+#
+#
#
-# ALSA_INCLUDE_DIR - where to find asoundlib.h, etc.
-# ALSA_LIBRARY - the asound library
-# ALSA_VERSION_STRING - the version of alsa found (since CMake 2.8.8)
+# ::
#
+# ALSA_INCLUDE_DIR - where to find asoundlib.h, etc.
+# ALSA_LIBRARY - the asound library
+# ALSA_VERSION_STRING - the version of alsa found (since CMake 2.8.8)
#=============================================================================
# Copyright 2009-2011 Kitware, Inc.
diff --git a/Modules/FindASPELL.cmake b/Modules/FindASPELL.cmake
index 5b383c4d3e..2a3f228fd4 100644
--- a/Modules/FindASPELL.cmake
+++ b/Modules/FindASPELL.cmake
@@ -1,11 +1,18 @@
-# - Try to find ASPELL
+#.rst:
+# FindASPELL
+# ----------
+#
+# Try to find ASPELL
+#
# Once done this will define
#
-# ASPELL_FOUND - system has ASPELL
-# ASPELL_EXECUTABLE - the ASPELL executable
-# ASPELL_INCLUDE_DIR - the ASPELL include directory
-# ASPELL_LIBRARIES - The libraries needed to use ASPELL
-# ASPELL_DEFINITIONS - Compiler switches required for using ASPELL
+# ::
+#
+# ASPELL_FOUND - system has ASPELL
+# ASPELL_EXECUTABLE - the ASPELL executable
+# ASPELL_INCLUDE_DIR - the ASPELL include directory
+# ASPELL_LIBRARIES - The libraries needed to use ASPELL
+# ASPELL_DEFINITIONS - Compiler switches required for using ASPELL
#=============================================================================
# Copyright 2006-2009 Kitware, Inc.
diff --git a/Modules/FindAVIFile.cmake b/Modules/FindAVIFile.cmake
index 93fa400045..566107585d 100644
--- a/Modules/FindAVIFile.cmake
+++ b/Modules/FindAVIFile.cmake
@@ -1,13 +1,20 @@
-# - Locate AVIFILE library and include paths
+#.rst:
+# FindAVIFile
+# -----------
+#
+# Locate AVIFILE library and include paths
+#
# AVIFILE (http://avifile.sourceforge.net/)is a set of libraries for
-# i386 machines
-# to use various AVI codecs. Support is limited beyond Linux. Windows
-# provides native AVI support, and so doesn't need this library.
-# This module defines
-# AVIFILE_INCLUDE_DIR, where to find avifile.h , etc.
-# AVIFILE_LIBRARIES, the libraries to link against
-# AVIFILE_DEFINITIONS, definitions to use when compiling
-# AVIFILE_FOUND, If false, don't try to use AVIFILE
+# i386 machines to use various AVI codecs. Support is limited beyond
+# Linux. Windows provides native AVI support, and so doesn't need this
+# library. This module defines
+#
+# ::
+#
+# AVIFILE_INCLUDE_DIR, where to find avifile.h , etc.
+# AVIFILE_LIBRARIES, the libraries to link against
+# AVIFILE_DEFINITIONS, definitions to use when compiling
+# AVIFILE_FOUND, If false, don't try to use AVIFILE
#=============================================================================
# Copyright 2002-2009 Kitware, Inc.
diff --git a/Modules/FindArmadillo.cmake b/Modules/FindArmadillo.cmake
index 4758534d78..4549771977 100644
--- a/Modules/FindArmadillo.cmake
+++ b/Modules/FindArmadillo.cmake
@@ -1,20 +1,32 @@
-# - Find Armadillo
+#.rst:
+# FindArmadillo
+# -------------
+#
+# Find Armadillo
+#
# Find the Armadillo C++ library
#
# Using Armadillo:
-# find_package(Armadillo REQUIRED)
-# include_directories(${ARMADILLO_INCLUDE_DIRS})
-# add_executable(foo foo.cc)
-# target_link_libraries(foo ${ARMADILLO_LIBRARIES})
+#
+# ::
+#
+# find_package(Armadillo REQUIRED)
+# include_directories(${ARMADILLO_INCLUDE_DIRS})
+# add_executable(foo foo.cc)
+# target_link_libraries(foo ${ARMADILLO_LIBRARIES})
+#
# This module sets the following variables:
-# ARMADILLO_FOUND - set to true if the library is found
-# ARMADILLO_INCLUDE_DIRS - list of required include directories
-# ARMADILLO_LIBRARIES - list of libraries to be linked
-# ARMADILLO_VERSION_MAJOR - major version number
-# ARMADILLO_VERSION_MINOR - minor version number
-# ARMADILLO_VERSION_PATCH - patch version number
-# ARMADILLO_VERSION_STRING - version number as a string (ex: "1.0.4")
-# ARMADILLO_VERSION_NAME - name of the version (ex: "Antipodean Antileech")
+#
+# ::
+#
+# ARMADILLO_FOUND - set to true if the library is found
+# ARMADILLO_INCLUDE_DIRS - list of required include directories
+# ARMADILLO_LIBRARIES - list of libraries to be linked
+# ARMADILLO_VERSION_MAJOR - major version number
+# ARMADILLO_VERSION_MINOR - minor version number
+# ARMADILLO_VERSION_PATCH - patch version number
+# ARMADILLO_VERSION_STRING - version number as a string (ex: "1.0.4")
+# ARMADILLO_VERSION_NAME - name of the version (ex: "Antipodean Antileech")
#=============================================================================
# Copyright 2011 Clement Creusot <creusot@cs.york.ac.uk>
diff --git a/Modules/FindBISON.cmake b/Modules/FindBISON.cmake
index 4a3e68c686..9ca428e98e 100644
--- a/Modules/FindBISON.cmake
+++ b/Modules/FindBISON.cmake
@@ -1,37 +1,61 @@
-# - Find bison executable and provides macros to generate custom build rules
+#.rst:
+# FindBISON
+# ---------
+#
+# Find bison executable and provides macros to generate custom build rules
+#
# The module defines the following variables:
#
-# BISON_EXECUTABLE - path to the bison program
-# BISON_VERSION - version of bison
-# BISON_FOUND - true if the program was found
+# ::
+#
+# BISON_EXECUTABLE - path to the bison program
+# BISON_VERSION - version of bison
+# BISON_FOUND - true if the program was found
+#
+#
#
# The minimum required version of bison can be specified using the
-# standard CMake syntax, e.g. find_package(BISON 2.1.3)
+# standard CMake syntax, e.g. find_package(BISON 2.1.3)
#
# If bison is found, the module defines the macros:
-# BISON_TARGET(<Name> <YaccInput> <CodeOutput> [VERBOSE <file>]
-# [COMPILE_FLAGS <string>])
-# which will create a custom rule to generate a parser. <YaccInput> is
-# the path to a yacc file. <CodeOutput> is the name of the source file
-# generated by bison. A header file is also be generated, and contains
-# the token list. If COMPILE_FLAGS option is specified, the next
-# parameter is added in the bison command line. if VERBOSE option is
-# specified, <file> is created and contains verbose descriptions of the
-# grammar and parser. The macro defines a set of variables:
-# BISON_${Name}_DEFINED - true is the macro ran successfully
-# BISON_${Name}_INPUT - The input source file, an alias for <YaccInput>
-# BISON_${Name}_OUTPUT_SOURCE - The source file generated by bison
-# BISON_${Name}_OUTPUT_HEADER - The header file generated by bison
-# BISON_${Name}_OUTPUTS - The sources files generated by bison
-# BISON_${Name}_COMPILE_FLAGS - Options used in the bison command line
-#
-# ====================================================================
-# Example:
-#
-# find_package(BISON)
-# BISON_TARGET(MyParser parser.y ${CMAKE_CURRENT_BINARY_DIR}/parser.cpp)
-# add_executable(Foo main.cpp ${BISON_MyParser_OUTPUTS})
-# ====================================================================
+#
+# ::
+#
+# BISON_TARGET(<Name> <YaccInput> <CodeOutput> [VERBOSE <file>]
+# [COMPILE_FLAGS <string>])
+#
+# which will create a custom rule to generate a parser. <YaccInput> is
+# the path to a yacc file. <CodeOutput> is the name of the source file
+# generated by bison. A header file is also be generated, and contains
+# the token list. If COMPILE_FLAGS option is specified, the next
+# parameter is added in the bison command line. if VERBOSE option is
+# specified, <file> is created and contains verbose descriptions of the
+# grammar and parser. The macro defines a set of variables:
+#
+# ::
+#
+# BISON_${Name}_DEFINED - true is the macro ran successfully
+# BISON_${Name}_INPUT - The input source file, an alias for <YaccInput>
+# BISON_${Name}_OUTPUT_SOURCE - The source file generated by bison
+# BISON_${Name}_OUTPUT_HEADER - The header file generated by bison
+# BISON_${Name}_OUTPUTS - The sources files generated by bison
+# BISON_${Name}_COMPILE_FLAGS - Options used in the bison command line
+#
+#
+#
+# ::
+#
+# ====================================================================
+# Example:
+#
+#
+#
+# ::
+#
+# find_package(BISON)
+# BISON_TARGET(MyParser parser.y ${CMAKE_CURRENT_BINARY_DIR}/parser.cpp)
+# add_executable(Foo main.cpp ${BISON_MyParser_OUTPUTS})
+# ====================================================================
#=============================================================================
# Copyright 2009 Kitware, Inc.
diff --git a/Modules/FindBLAS.cmake b/Modules/FindBLAS.cmake
index 8bb83d98a1..3b658ef38f 100644
--- a/Modules/FindBLAS.cmake
+++ b/Modules/FindBLAS.cmake
@@ -1,31 +1,41 @@
-# - Find BLAS library
-# This module finds an installed fortran library that implements the BLAS
-# linear-algebra interface (see http://www.netlib.org/blas/).
-# The list of libraries searched for is taken
-# from the autoconf macro file, acx_blas.m4 (distributed at
+#.rst:
+# FindBLAS
+# --------
+#
+# Find BLAS library
+#
+# This module finds an installed fortran library that implements the
+# BLAS linear-algebra interface (see http://www.netlib.org/blas/). The
+# list of libraries searched for is taken from the autoconf macro file,
+# acx_blas.m4 (distributed at
# http://ac-archive.sourceforge.net/ac-archive/acx_blas.html).
#
# This module sets the following variables:
-# BLAS_FOUND - set to true if a library implementing the BLAS interface
-# is found
-# BLAS_LINKER_FLAGS - uncached list of required linker flags (excluding -l
-# and -L).
-# BLAS_LIBRARIES - uncached list of libraries (using full path name) to
-# link against to use BLAS
-# BLAS95_LIBRARIES - uncached list of libraries (using full path name)
-# to link against to use BLAS95 interface
-# BLAS95_FOUND - set to true if a library implementing the BLAS f95 interface
-# is found
-# BLA_STATIC if set on this determines what kind of linkage we do (static)
-# BLA_VENDOR if set checks only the specified vendor, if not set checks
-# all the possibilities
-# BLA_F95 if set on tries to find the f95 interfaces for BLAS/LAPACK
-##########
-### List of vendors (BLA_VENDOR) valid in this module
-## Goto,ATLAS PhiPACK,CXML,DXML,SunPerf,SCSL,SGIMATH,IBMESSL,Intel10_32 (intel mkl v10 32 bit),Intel10_64lp (intel mkl v10 64 bit,lp thread model, lp64 model),
-## Intel10_64lp_seq (intel mkl v10 64 bit,sequential code, lp64 model),
-## Intel( older versions of mkl 32 and 64 bit), ACML,ACML_MP,ACML_GPU,Apple, NAS, Generic
-# C/CXX should be enabled to use Intel mkl
+#
+# ::
+#
+# BLAS_FOUND - set to true if a library implementing the BLAS interface
+# is found
+# BLAS_LINKER_FLAGS - uncached list of required linker flags (excluding -l
+# and -L).
+# BLAS_LIBRARIES - uncached list of libraries (using full path name) to
+# link against to use BLAS
+# BLAS95_LIBRARIES - uncached list of libraries (using full path name)
+# to link against to use BLAS95 interface
+# BLAS95_FOUND - set to true if a library implementing the BLAS f95 interface
+# is found
+# BLA_STATIC if set on this determines what kind of linkage we do (static)
+# BLA_VENDOR if set checks only the specified vendor, if not set checks
+# all the possibilities
+# BLA_F95 if set on tries to find the f95 interfaces for BLAS/LAPACK
+#
+# ######### ## List of vendors (BLA_VENDOR) valid in this module #
+# Goto,ATLAS PhiPACK,CXML,DXML,SunPerf,SCSL,SGIMATH,IBMESSL,Intel10_32
+# (intel mkl v10 32 bit),Intel10_64lp (intel mkl v10 64 bit,lp thread
+# model, lp64 model), # Intel10_64lp_seq (intel mkl v10 64
+# bit,sequential code, lp64 model), # Intel( older versions of mkl 32
+# and 64 bit), ACML,ACML_MP,ACML_GPU,Apple, NAS, Generic C/CXX should be
+# enabled to use Intel mkl
#=============================================================================
# Copyright 2007-2009 Kitware, Inc.
diff --git a/Modules/FindBZip2.cmake b/Modules/FindBZip2.cmake
index 9fb29d0f4e..388387735b 100644
--- a/Modules/FindBZip2.cmake
+++ b/Modules/FindBZip2.cmake
@@ -1,11 +1,18 @@
-# - Try to find BZip2
+#.rst:
+# FindBZip2
+# ---------
+#
+# Try to find BZip2
+#
# Once done this will define
#
-# BZIP2_FOUND - system has BZip2
-# BZIP2_INCLUDE_DIR - the BZip2 include directory
-# BZIP2_LIBRARIES - Link these to use BZip2
-# BZIP2_NEED_PREFIX - this is set if the functions are prefixed with BZ2_
-# BZIP2_VERSION_STRING - the version of BZip2 found (since CMake 2.8.8)
+# ::
+#
+# BZIP2_FOUND - system has BZip2
+# BZIP2_INCLUDE_DIR - the BZip2 include directory
+# BZIP2_LIBRARIES - Link these to use BZip2
+# BZIP2_NEED_PREFIX - this is set if the functions are prefixed with BZ2_
+# BZIP2_VERSION_STRING - the version of BZip2 found (since CMake 2.8.8)
#=============================================================================
# Copyright 2006-2012 Kitware, Inc.
diff --git a/Modules/FindBoost.cmake b/Modules/FindBoost.cmake
index 914a0a5b5c..6e1c9269d9 100644
--- a/Modules/FindBoost.cmake
+++ b/Modules/FindBoost.cmake
@@ -1,136 +1,180 @@
-# - Find Boost include dirs and libraries
+#.rst:
+# FindBoost
+# ---------
+#
+# Find Boost include dirs and libraries
+#
# Use this module by invoking find_package with the form:
-# find_package(Boost
-# [version] [EXACT] # Minimum or EXACT version e.g. 1.36.0
-# [REQUIRED] # Fail with error if Boost is not found
-# [COMPONENTS <libs>...] # Boost libraries by their canonical name
-# ) # e.g. "date_time" for "libboost_date_time"
+#
+# ::
+#
+# find_package(Boost
+# [version] [EXACT] # Minimum or EXACT version e.g. 1.36.0
+# [REQUIRED] # Fail with error if Boost is not found
+# [COMPONENTS <libs>...] # Boost libraries by their canonical name
+# ) # e.g. "date_time" for "libboost_date_time"
+#
# This module finds headers and requested component libraries OR a CMake
# package configuration file provided by a "Boost CMake" build. For the
# latter case skip to the "Boost CMake" section below. For the former
# case results are reported in variables:
-# Boost_FOUND - True if headers and requested libraries were found
-# Boost_INCLUDE_DIRS - Boost include directories
-# Boost_LIBRARY_DIRS - Link directories for Boost libraries
-# Boost_LIBRARIES - Boost component libraries to be linked
-# Boost_<C>_FOUND - True if component <C> was found (<C> is upper-case)
-# Boost_<C>_LIBRARY - Libraries to link for component <C> (may include
-# target_link_libraries debug/optimized keywords)
-# Boost_VERSION - BOOST_VERSION value from boost/version.hpp
-# Boost_LIB_VERSION - Version string appended to library filenames
-# Boost_MAJOR_VERSION - Boost major version number (X in X.y.z)
-# Boost_MINOR_VERSION - Boost minor version number (Y in x.Y.z)
-# Boost_SUBMINOR_VERSION - Boost subminor version number (Z in x.y.Z)
-# Boost_LIB_DIAGNOSTIC_DEFINITIONS (Windows)
-# - Pass to add_definitions() to have diagnostic
-# information about Boost's automatic linking
-# displayed during compilation
+#
+# ::
+#
+# Boost_FOUND - True if headers and requested libraries were found
+# Boost_INCLUDE_DIRS - Boost include directories
+# Boost_LIBRARY_DIRS - Link directories for Boost libraries
+# Boost_LIBRARIES - Boost component libraries to be linked
+# Boost_<C>_FOUND - True if component <C> was found (<C> is upper-case)
+# Boost_<C>_LIBRARY - Libraries to link for component <C> (may include
+# target_link_libraries debug/optimized keywords)
+# Boost_VERSION - BOOST_VERSION value from boost/version.hpp
+# Boost_LIB_VERSION - Version string appended to library filenames
+# Boost_MAJOR_VERSION - Boost major version number (X in X.y.z)
+# Boost_MINOR_VERSION - Boost minor version number (Y in x.Y.z)
+# Boost_SUBMINOR_VERSION - Boost subminor version number (Z in x.y.Z)
+# Boost_LIB_DIAGNOSTIC_DEFINITIONS (Windows)
+# - Pass to add_definitions() to have diagnostic
+# information about Boost's automatic linking
+# displayed during compilation
+#
+#
#
# This module reads hints about search locations from variables:
-# BOOST_ROOT - Preferred installation prefix
-# (or BOOSTROOT)
-# BOOST_INCLUDEDIR - Preferred include directory e.g. <prefix>/include
-# BOOST_LIBRARYDIR - Preferred library directory e.g. <prefix>/lib
-# Boost_NO_SYSTEM_PATHS - Set to ON to disable searching in locations not
-# specified by these hint variables. Default is OFF.
-# Boost_ADDITIONAL_VERSIONS
-# - List of Boost versions not known to this module
-# (Boost install locations may contain the version)
+#
+# ::
+#
+# BOOST_ROOT - Preferred installation prefix
+# (or BOOSTROOT)
+# BOOST_INCLUDEDIR - Preferred include directory e.g. <prefix>/include
+# BOOST_LIBRARYDIR - Preferred library directory e.g. <prefix>/lib
+# Boost_NO_SYSTEM_PATHS - Set to ON to disable searching in locations not
+# specified by these hint variables. Default is OFF.
+# Boost_ADDITIONAL_VERSIONS
+# - List of Boost versions not known to this module
+# (Boost install locations may contain the version)
+#
# and saves search results persistently in CMake cache entries:
-# Boost_INCLUDE_DIR - Directory containing Boost headers
-# Boost_LIBRARY_DIR - Directory containing Boost libraries
-# Boost_<C>_LIBRARY_DEBUG - Component <C> library debug variant
-# Boost_<C>_LIBRARY_RELEASE - Component <C> library release variant
-# Users may set these hints or results as cache entries. Projects should
-# not read these entries directly but instead use the above result variables.
-# Note that some hint names start in upper-case "BOOST". One may specify
-# these as environment variables if they are not specified as CMake variables
-# or cache entries.
#
-# This module first searches for the Boost header files using the above hint
-# variables (excluding BOOST_LIBRARYDIR) and saves the result in
-# Boost_INCLUDE_DIR. Then it searches for requested component libraries using
-# the above hints (excluding BOOST_INCLUDEDIR and Boost_ADDITIONAL_VERSIONS),
-# "lib" directories near Boost_INCLUDE_DIR, and the library name configuration
-# settings below. It saves the library directory in Boost_LIBRARY_DIR and
-# individual library locations in Boost_<C>_LIBRARY_DEBUG and
-# Boost_<C>_LIBRARY_RELEASE. When one changes settings used by previous
-# searches in the same build tree (excluding environment variables) this
-# module discards previous search results affected by the changes and searches
-# again.
+# ::
+#
+# Boost_INCLUDE_DIR - Directory containing Boost headers
+# Boost_LIBRARY_DIR - Directory containing Boost libraries
+# Boost_<C>_LIBRARY_DEBUG - Component <C> library debug variant
+# Boost_<C>_LIBRARY_RELEASE - Component <C> library release variant
+#
+# Users may set these hints or results as cache entries. Projects
+# should not read these entries directly but instead use the above
+# result variables. Note that some hint names start in upper-case
+# "BOOST". One may specify these as environment variables if they are
+# not specified as CMake variables or cache entries.
+#
+# This module first searches for the Boost header files using the above
+# hint variables (excluding BOOST_LIBRARYDIR) and saves the result in
+# Boost_INCLUDE_DIR. Then it searches for requested component libraries
+# using the above hints (excluding BOOST_INCLUDEDIR and
+# Boost_ADDITIONAL_VERSIONS), "lib" directories near Boost_INCLUDE_DIR,
+# and the library name configuration settings below. It saves the
+# library directory in Boost_LIBRARY_DIR and individual library
+# locations in Boost_<C>_LIBRARY_DEBUG and Boost_<C>_LIBRARY_RELEASE.
+# When one changes settings used by previous searches in the same build
+# tree (excluding environment variables) this module discards previous
+# search results affected by the changes and searches again.
+#
+# Boost libraries come in many variants encoded in their file name.
+# Users or projects may tell this module which variant to find by
+# setting variables:
+#
+# ::
+#
+# Boost_USE_MULTITHREADED - Set to OFF to use the non-multithreaded
+# libraries ('mt' tag). Default is ON.
+# Boost_USE_STATIC_LIBS - Set to ON to force the use of the static
+# libraries. Default is OFF.
+# Boost_USE_STATIC_RUNTIME - Set to ON or OFF to specify whether to use
+# libraries linked statically to the C++ runtime
+# ('s' tag). Default is platform dependent.
+# Boost_USE_DEBUG_PYTHON - Set to ON to use libraries compiled with a
+# debug Python build ('y' tag). Default is OFF.
+# Boost_USE_STLPORT - Set to ON to use libraries compiled with
+# STLPort ('p' tag). Default is OFF.
+# Boost_USE_STLPORT_DEPRECATED_NATIVE_IOSTREAMS
+# - Set to ON to use libraries compiled with
+# STLPort deprecated "native iostreams"
+# ('n' tag). Default is OFF.
+# Boost_COMPILER - Set to the compiler-specific library suffix
+# (e.g. "-gcc43"). Default is auto-computed
+# for the C++ compiler in use.
+# Boost_THREADAPI - Suffix for "thread" component library name,
+# such as "pthread" or "win32". Names with
+# and without this suffix will both be tried.
#
-# Boost libraries come in many variants encoded in their file name. Users or
-# projects may tell this module which variant to find by setting variables:
-# Boost_USE_MULTITHREADED - Set to OFF to use the non-multithreaded
-# libraries ('mt' tag). Default is ON.
-# Boost_USE_STATIC_LIBS - Set to ON to force the use of the static
-# libraries. Default is OFF.
-# Boost_USE_STATIC_RUNTIME - Set to ON or OFF to specify whether to use
-# libraries linked statically to the C++ runtime
-# ('s' tag). Default is platform dependent.
-# Boost_USE_DEBUG_PYTHON - Set to ON to use libraries compiled with a
-# debug Python build ('y' tag). Default is OFF.
-# Boost_USE_STLPORT - Set to ON to use libraries compiled with
-# STLPort ('p' tag). Default is OFF.
-# Boost_USE_STLPORT_DEPRECATED_NATIVE_IOSTREAMS
-# - Set to ON to use libraries compiled with
-# STLPort deprecated "native iostreams"
-# ('n' tag). Default is OFF.
-# Boost_COMPILER - Set to the compiler-specific library suffix
-# (e.g. "-gcc43"). Default is auto-computed
-# for the C++ compiler in use.
-# Boost_THREADAPI - Suffix for "thread" component library name,
-# such as "pthread" or "win32". Names with
-# and without this suffix will both be tried.
# Other variables one may set to control this module are:
-# Boost_DEBUG - Set to ON to enable debug output from FindBoost.
-# Please enable this before filing any bug report.
-# Boost_DETAILED_FAILURE_MSG
-# - Set to ON to add detailed information to the
-# failure message even when the REQUIRED option
-# is not given to the find_package call.
-# Boost_REALPATH - Set to ON to resolve symlinks for discovered
-# libraries to assist with packaging. For example,
-# the "system" component library may be resolved to
-# "/usr/lib/libboost_system.so.1.42.0" instead of
-# "/usr/lib/libboost_system.so". This does not
-# affect linking and should not be enabled unless
-# the user needs this information.
+#
+# ::
+#
+# Boost_DEBUG - Set to ON to enable debug output from FindBoost.
+# Please enable this before filing any bug report.
+# Boost_DETAILED_FAILURE_MSG
+# - Set to ON to add detailed information to the
+# failure message even when the REQUIRED option
+# is not given to the find_package call.
+# Boost_REALPATH - Set to ON to resolve symlinks for discovered
+# libraries to assist with packaging. For example,
+# the "system" component library may be resolved to
+# "/usr/lib/libboost_system.so.1.42.0" instead of
+# "/usr/lib/libboost_system.so". This does not
+# affect linking and should not be enabled unless
+# the user needs this information.
+#
# On Visual Studio and Borland compilers Boost headers request automatic
-# linking to corresponding libraries. This requires matching libraries to be
-# linked explicitly or available in the link library search path. In this
-# case setting Boost_USE_STATIC_LIBS to OFF may not achieve dynamic linking.
-# Boost automatic linking typically requests static libraries with a few
-# exceptions (such as Boost.Python). Use
-# add_definitions(${Boost_LIB_DIAGNOSTIC_DEFINITIONS})
+# linking to corresponding libraries. This requires matching libraries
+# to be linked explicitly or available in the link library search path.
+# In this case setting Boost_USE_STATIC_LIBS to OFF may not achieve
+# dynamic linking. Boost automatic linking typically requests static
+# libraries with a few exceptions (such as Boost.Python). Use
+#
+# ::
+#
+# add_definitions(${Boost_LIB_DIAGNOSTIC_DEFINITIONS})
+#
# to ask Boost to report information about automatic linking requests.
#
# Example to find Boost headers only:
-# find_package(Boost 1.36.0)
-# if(Boost_FOUND)
-# include_directories(${Boost_INCLUDE_DIRS})
-# add_executable(foo foo.cc)
-# endif()
+#
+# ::
+#
+# find_package(Boost 1.36.0)
+# if(Boost_FOUND)
+# include_directories(${Boost_INCLUDE_DIRS})
+# add_executable(foo foo.cc)
+# endif()
+#
# Example to find Boost headers and some libraries:
-# set(Boost_USE_STATIC_LIBS ON)
-# set(Boost_USE_MULTITHREADED ON)
-# set(Boost_USE_STATIC_RUNTIME OFF)
-# find_package(Boost 1.36.0 COMPONENTS date_time filesystem system ...)
-# if(Boost_FOUND)
-# include_directories(${Boost_INCLUDE_DIRS})
-# add_executable(foo foo.cc)
-# target_link_libraries(foo ${Boost_LIBRARIES})
-# endif()
+#
+# ::
+#
+# set(Boost_USE_STATIC_LIBS ON)
+# set(Boost_USE_MULTITHREADED ON)
+# set(Boost_USE_STATIC_RUNTIME OFF)
+# find_package(Boost 1.36.0 COMPONENTS date_time filesystem system ...)
+# if(Boost_FOUND)
+# include_directories(${Boost_INCLUDE_DIRS})
+# add_executable(foo foo.cc)
+# target_link_libraries(foo ${Boost_LIBRARIES})
+# endif()
+#
+#
#
# Boost CMake ----------------------------------------------------------
#
# If Boost was built using the boost-cmake project it provides a package
-# configuration file for use with find_package's Config mode. This module
-# looks for the package configuration file called BoostConfig.cmake or
-# boost-config.cmake and stores the result in cache entry "Boost_DIR". If
-# found, the package configuration file is loaded and this module returns with
-# no further action. See documentation of the Boost CMake package
-# configuration for details on what it provides.
+# configuration file for use with find_package's Config mode. This
+# module looks for the package configuration file called
+# BoostConfig.cmake or boost-config.cmake and stores the result in cache
+# entry "Boost_DIR". If found, the package configuration file is loaded
+# and this module returns with no further action. See documentation of
+# the Boost CMake package configuration for details on what it provides.
#
# Set Boost_NO_BOOST_CMAKE to ON to disable the search for boost-cmake.
diff --git a/Modules/FindBullet.cmake b/Modules/FindBullet.cmake
index 1a27fc32bb..fc848fae02 100644
--- a/Modules/FindBullet.cmake
+++ b/Modules/FindBullet.cmake
@@ -1,17 +1,36 @@
-# - Try to find the Bullet physics engine
+#.rst:
+# FindBullet
+# ----------
#
-# This module defines the following variables
+# Try to find the Bullet physics engine
#
-# BULLET_FOUND - Was bullet found
-# BULLET_INCLUDE_DIRS - the Bullet include directories
-# BULLET_LIBRARIES - Link to this, by default it includes
-# all bullet components (Dynamics,
-# Collision, LinearMath, & SoftBody)
#
-# This module accepts the following variables
#
-# BULLET_ROOT - Can be set to bullet install path or Windows build path
+# ::
#
+# This module defines the following variables
+#
+#
+#
+# ::
+#
+# BULLET_FOUND - Was bullet found
+# BULLET_INCLUDE_DIRS - the Bullet include directories
+# BULLET_LIBRARIES - Link to this, by default it includes
+# all bullet components (Dynamics,
+# Collision, LinearMath, & SoftBody)
+#
+#
+#
+# ::
+#
+# This module accepts the following variables
+#
+#
+#
+# ::
+#
+# BULLET_ROOT - Can be set to bullet install path or Windows build path
#=============================================================================
# Copyright 2009 Kitware, Inc.
diff --git a/Modules/FindCABLE.cmake b/Modules/FindCABLE.cmake
index 3e2d5d3bb1..5cea109ad7 100644
--- a/Modules/FindCABLE.cmake
+++ b/Modules/FindCABLE.cmake
@@ -1,14 +1,24 @@
-# - Find CABLE
+#.rst:
+# FindCABLE
+# ---------
+#
+# Find CABLE
+#
# This module finds if CABLE is installed and determines where the
-# include files and libraries are. This code sets the following variables:
+# include files and libraries are. This code sets the following
+# variables:
+#
+# ::
+#
+# CABLE the path to the cable executable
+# CABLE_TCL_LIBRARY the path to the Tcl wrapper library
+# CABLE_INCLUDE_DIR the path to the include directory
+#
#
-# CABLE the path to the cable executable
-# CABLE_TCL_LIBRARY the path to the Tcl wrapper library
-# CABLE_INCLUDE_DIR the path to the include directory
#
# To build Tcl wrappers, you should add shared library and link it to
-# ${CABLE_TCL_LIBRARY}. You should also add ${CABLE_INCLUDE_DIR} as
-# an include directory.
+# ${CABLE_TCL_LIBRARY}. You should also add ${CABLE_INCLUDE_DIR} as an
+# include directory.
#=============================================================================
# Copyright 2001-2009 Kitware, Inc.
diff --git a/Modules/FindCUDA.cmake b/Modules/FindCUDA.cmake
index 2705d32715..5dca8206e9 100644
--- a/Modules/FindCUDA.cmake
+++ b/Modules/FindCUDA.cmake
@@ -1,292 +1,460 @@
-# - Tools for building CUDA C files: libraries and build dependencies.
-# This script locates the NVIDIA CUDA C tools. It should work on linux, windows,
-# and mac and should be reasonably up to date with CUDA C releases.
-#
-# This script makes use of the standard find_package arguments of <VERSION>,
-# REQUIRED and QUIET. CUDA_FOUND will report if an acceptable version of CUDA
-# was found.
-#
-# The script will prompt the user to specify CUDA_TOOLKIT_ROOT_DIR if the prefix
-# cannot be determined by the location of nvcc in the system path and REQUIRED
-# is specified to find_package(). To use a different installed version of the
-# toolkit set the environment variable CUDA_BIN_PATH before running cmake
-# (e.g. CUDA_BIN_PATH=/usr/local/cuda1.0 instead of the default /usr/local/cuda)
-# or set CUDA_TOOLKIT_ROOT_DIR after configuring. If you change the value of
-# CUDA_TOOLKIT_ROOT_DIR, various components that depend on the path will be
-# relocated.
+#.rst:
+# FindCUDA
+# --------
+#
+# Tools for building CUDA C files: libraries and build dependencies.
+#
+# This script locates the NVIDIA CUDA C tools. It should work on linux,
+# windows, and mac and should be reasonably up to date with CUDA C
+# releases.
+#
+# This script makes use of the standard find_package arguments of
+# <VERSION>, REQUIRED and QUIET. CUDA_FOUND will report if an
+# acceptable version of CUDA was found.
+#
+# The script will prompt the user to specify CUDA_TOOLKIT_ROOT_DIR if
+# the prefix cannot be determined by the location of nvcc in the system
+# path and REQUIRED is specified to find_package(). To use a different
+# installed version of the toolkit set the environment variable
+# CUDA_BIN_PATH before running cmake (e.g.
+# CUDA_BIN_PATH=/usr/local/cuda1.0 instead of the default
+# /usr/local/cuda) or set CUDA_TOOLKIT_ROOT_DIR after configuring. If
+# you change the value of CUDA_TOOLKIT_ROOT_DIR, various components that
+# depend on the path will be relocated.
#
# It might be necessary to set CUDA_TOOLKIT_ROOT_DIR manually on certain
-# platforms, or to use a cuda runtime not installed in the default location. In
-# newer versions of the toolkit the cuda library is included with the graphics
-# driver- be sure that the driver version matches what is needed by the cuda
-# runtime version.
-#
-# The following variables affect the behavior of the macros in the script (in
-# alphebetical order). Note that any of these flags can be changed multiple
-# times in the same directory before calling CUDA_ADD_EXECUTABLE,
-# CUDA_ADD_LIBRARY, CUDA_COMPILE, CUDA_COMPILE_PTX or CUDA_WRAP_SRCS.
-#
-# CUDA_64_BIT_DEVICE_CODE (Default matches host bit size)
-# -- Set to ON to compile for 64 bit device code, OFF for 32 bit device code.
-# Note that making this different from the host code when generating object
-# or C files from CUDA code just won't work, because size_t gets defined by
-# nvcc in the generated source. If you compile to PTX and then load the
-# file yourself, you can mix bit sizes between device and host.
-#
-# CUDA_ATTACH_VS_BUILD_RULE_TO_CUDA_FILE (Default ON)
-# -- Set to ON if you want the custom build rule to be attached to the source
-# file in Visual Studio. Turn OFF if you add the same cuda file to multiple
-# targets.
-#
-# This allows the user to build the target from the CUDA file; however, bad
-# things can happen if the CUDA source file is added to multiple targets.
-# When performing parallel builds it is possible for the custom build
-# command to be run more than once and in parallel causing cryptic build
-# errors. VS runs the rules for every source file in the target, and a
-# source can have only one rule no matter how many projects it is added to.
-# When the rule is run from multiple targets race conditions can occur on
-# the generated file. Eventually everything will get built, but if the user
-# is unaware of this behavior, there may be confusion. It would be nice if
-# this script could detect the reuse of source files across multiple targets
-# and turn the option off for the user, but no good solution could be found.
-#
-# CUDA_BUILD_CUBIN (Default OFF)
-# -- Set to ON to enable and extra compilation pass with the -cubin option in
-# Device mode. The output is parsed and register, shared memory usage is
-# printed during build.
-#
-# CUDA_BUILD_EMULATION (Default OFF for device mode)
-# -- Set to ON for Emulation mode. -D_DEVICEEMU is defined for CUDA C files
-# when CUDA_BUILD_EMULATION is TRUE.
-#
-# CUDA_GENERATED_OUTPUT_DIR (Default CMAKE_CURRENT_BINARY_DIR)
-# -- Set to the path you wish to have the generated files placed. If it is
-# blank output files will be placed in CMAKE_CURRENT_BINARY_DIR.
-# Intermediate files will always be placed in
-# CMAKE_CURRENT_BINARY_DIR/CMakeFiles.
-#
-# CUDA_HOST_COMPILATION_CPP (Default ON)
-# -- Set to OFF for C compilation of host code.
-#
-# CUDA_HOST_COMPILER (Default CMAKE_C_COMPILER, $(VCInstallDir)/bin for VS)
-# -- Set the host compiler to be used by nvcc. Ignored if -ccbin or
-# --compiler-bindir is already present in the CUDA_NVCC_FLAGS or
-# CUDA_NVCC_FLAGS_<CONFIG> variables. For Visual Studio targets
-# $(VCInstallDir)/bin is a special value that expands out to the path when
-# the command is run from withing VS.
-#
-# CUDA_NVCC_FLAGS
-# CUDA_NVCC_FLAGS_<CONFIG>
-# -- Additional NVCC command line arguments. NOTE: multiple arguments must be
-# semi-colon delimited (e.g. --compiler-options;-Wall)
-#
-# CUDA_PROPAGATE_HOST_FLAGS (Default ON)
-# -- Set to ON to propagate CMAKE_{C,CXX}_FLAGS and their configuration
-# dependent counterparts (e.g. CMAKE_C_FLAGS_DEBUG) automatically to the
-# host compiler through nvcc's -Xcompiler flag. This helps make the
-# generated host code match the rest of the system better. Sometimes
-# certain flags give nvcc problems, and this will help you turn the flag
-# propagation off. This does not affect the flags supplied directly to nvcc
-# via CUDA_NVCC_FLAGS or through the OPTION flags specified through
-# CUDA_ADD_LIBRARY, CUDA_ADD_EXECUTABLE, or CUDA_WRAP_SRCS. Flags used for
-# shared library compilation are not affected by this flag.
-#
-# CUDA_SEPARABLE_COMPILATION (Default OFF)
-# -- If set this will enable separable compilation for all CUDA runtime object
-# files. If used outside of CUDA_ADD_EXECUTABLE and CUDA_ADD_LIBRARY
-# (e.g. calling CUDA_WRAP_SRCS directly),
-# CUDA_COMPUTE_SEPARABLE_COMPILATION_OBJECT_FILE_NAME and
-# CUDA_LINK_SEPARABLE_COMPILATION_OBJECTS should be called.
-#
-# CUDA_VERBOSE_BUILD (Default OFF)
-# -- Set to ON to see all the commands used when building the CUDA file. When
-# using a Makefile generator the value defaults to VERBOSE (run make
-# VERBOSE=1 to see output), although setting CUDA_VERBOSE_BUILD to ON will
-# always print the output.
+# platforms, or to use a cuda runtime not installed in the default
+# location. In newer versions of the toolkit the cuda library is
+# included with the graphics driver- be sure that the driver version
+# matches what is needed by the cuda runtime version.
+#
+# The following variables affect the behavior of the macros in the
+# script (in alphebetical order). Note that any of these flags can be
+# changed multiple times in the same directory before calling
+# CUDA_ADD_EXECUTABLE, CUDA_ADD_LIBRARY, CUDA_COMPILE, CUDA_COMPILE_PTX
+# or CUDA_WRAP_SRCS.
+#
+# ::
+#
+# CUDA_64_BIT_DEVICE_CODE (Default matches host bit size)
+# -- Set to ON to compile for 64 bit device code, OFF for 32 bit device code.
+# Note that making this different from the host code when generating object
+# or C files from CUDA code just won't work, because size_t gets defined by
+# nvcc in the generated source. If you compile to PTX and then load the
+# file yourself, you can mix bit sizes between device and host.
+#
+#
+#
+# ::
+#
+# CUDA_ATTACH_VS_BUILD_RULE_TO_CUDA_FILE (Default ON)
+# -- Set to ON if you want the custom build rule to be attached to the source
+# file in Visual Studio. Turn OFF if you add the same cuda file to multiple
+# targets.
+#
+#
+#
+# ::
+#
+# This allows the user to build the target from the CUDA file; however, bad
+# things can happen if the CUDA source file is added to multiple targets.
+# When performing parallel builds it is possible for the custom build
+# command to be run more than once and in parallel causing cryptic build
+# errors. VS runs the rules for every source file in the target, and a
+# source can have only one rule no matter how many projects it is added to.
+# When the rule is run from multiple targets race conditions can occur on
+# the generated file. Eventually everything will get built, but if the user
+# is unaware of this behavior, there may be confusion. It would be nice if
+# this script could detect the reuse of source files across multiple targets
+# and turn the option off for the user, but no good solution could be found.
+#
+#
+#
+# ::
+#
+# CUDA_BUILD_CUBIN (Default OFF)
+# -- Set to ON to enable and extra compilation pass with the -cubin option in
+# Device mode. The output is parsed and register, shared memory usage is
+# printed during build.
+#
+#
+#
+# ::
+#
+# CUDA_BUILD_EMULATION (Default OFF for device mode)
+# -- Set to ON for Emulation mode. -D_DEVICEEMU is defined for CUDA C files
+# when CUDA_BUILD_EMULATION is TRUE.
+#
+#
+#
+# ::
+#
+# CUDA_GENERATED_OUTPUT_DIR (Default CMAKE_CURRENT_BINARY_DIR)
+# -- Set to the path you wish to have the generated files placed. If it is
+# blank output files will be placed in CMAKE_CURRENT_BINARY_DIR.
+# Intermediate files will always be placed in
+# CMAKE_CURRENT_BINARY_DIR/CMakeFiles.
+#
+#
+#
+# ::
+#
+# CUDA_HOST_COMPILATION_CPP (Default ON)
+# -- Set to OFF for C compilation of host code.
+#
+#
+#
+# ::
+#
+# CUDA_HOST_COMPILER (Default CMAKE_C_COMPILER, $(VCInstallDir)/bin for VS)
+# -- Set the host compiler to be used by nvcc. Ignored if -ccbin or
+# --compiler-bindir is already present in the CUDA_NVCC_FLAGS or
+# CUDA_NVCC_FLAGS_<CONFIG> variables. For Visual Studio targets
+# $(VCInstallDir)/bin is a special value that expands out to the path when
+# the command is run from withing VS.
+#
+#
+#
+# ::
+#
+# CUDA_NVCC_FLAGS
+# CUDA_NVCC_FLAGS_<CONFIG>
+# -- Additional NVCC command line arguments. NOTE: multiple arguments must be
+# semi-colon delimited (e.g. --compiler-options;-Wall)
+#
+#
+#
+# ::
+#
+# CUDA_PROPAGATE_HOST_FLAGS (Default ON)
+# -- Set to ON to propagate CMAKE_{C,CXX}_FLAGS and their configuration
+# dependent counterparts (e.g. CMAKE_C_FLAGS_DEBUG) automatically to the
+# host compiler through nvcc's -Xcompiler flag. This helps make the
+# generated host code match the rest of the system better. Sometimes
+# certain flags give nvcc problems, and this will help you turn the flag
+# propagation off. This does not affect the flags supplied directly to nvcc
+# via CUDA_NVCC_FLAGS or through the OPTION flags specified through
+# CUDA_ADD_LIBRARY, CUDA_ADD_EXECUTABLE, or CUDA_WRAP_SRCS. Flags used for
+# shared library compilation are not affected by this flag.
+#
+#
+#
+# ::
+#
+# CUDA_SEPARABLE_COMPILATION (Default OFF)
+# -- If set this will enable separable compilation for all CUDA runtime object
+# files. If used outside of CUDA_ADD_EXECUTABLE and CUDA_ADD_LIBRARY
+# (e.g. calling CUDA_WRAP_SRCS directly),
+# CUDA_COMPUTE_SEPARABLE_COMPILATION_OBJECT_FILE_NAME and
+# CUDA_LINK_SEPARABLE_COMPILATION_OBJECTS should be called.
+#
+#
+#
+# ::
+#
+# CUDA_VERBOSE_BUILD (Default OFF)
+# -- Set to ON to see all the commands used when building the CUDA file. When
+# using a Makefile generator the value defaults to VERBOSE (run make
+# VERBOSE=1 to see output), although setting CUDA_VERBOSE_BUILD to ON will
+# always print the output.
+#
+#
#
# The script creates the following macros (in alphebetical order):
#
-# CUDA_ADD_CUFFT_TO_TARGET( cuda_target )
-# -- Adds the cufft library to the target (can be any target). Handles whether
-# you are in emulation mode or not.
-#
-# CUDA_ADD_CUBLAS_TO_TARGET( cuda_target )
-# -- Adds the cublas library to the target (can be any target). Handles
-# whether you are in emulation mode or not.
-#
-# CUDA_ADD_EXECUTABLE( cuda_target file0 file1 ...
-# [WIN32] [MACOSX_BUNDLE] [EXCLUDE_FROM_ALL] [OPTIONS ...] )
-# -- Creates an executable "cuda_target" which is made up of the files
-# specified. All of the non CUDA C files are compiled using the standard
-# build rules specified by CMAKE and the cuda files are compiled to object
-# files using nvcc and the host compiler. In addition CUDA_INCLUDE_DIRS is
-# added automatically to include_directories(). Some standard CMake target
-# calls can be used on the target after calling this macro
-# (e.g. set_target_properties and target_link_libraries), but setting
-# properties that adjust compilation flags will not affect code compiled by
-# nvcc. Such flags should be modified before calling CUDA_ADD_EXECUTABLE,
-# CUDA_ADD_LIBRARY or CUDA_WRAP_SRCS.
-#
-# CUDA_ADD_LIBRARY( cuda_target file0 file1 ...
-# [STATIC | SHARED | MODULE] [EXCLUDE_FROM_ALL] [OPTIONS ...] )
-# -- Same as CUDA_ADD_EXECUTABLE except that a library is created.
-#
-# CUDA_BUILD_CLEAN_TARGET()
-# -- Creates a convience target that deletes all the dependency files
-# generated. You should make clean after running this target to ensure the
-# dependency files get regenerated.
-#
-# CUDA_COMPILE( generated_files file0 file1 ... [STATIC | SHARED | MODULE]
-# [OPTIONS ...] )
-# -- Returns a list of generated files from the input source files to be used
-# with ADD_LIBRARY or ADD_EXECUTABLE.
-#
-# CUDA_COMPILE_PTX( generated_files file0 file1 ... [OPTIONS ...] )
-# -- Returns a list of PTX files generated from the input source files.
-#
-# CUDA_COMPUTE_SEPARABLE_COMPILATION_OBJECT_FILE_NAME( output_file_var
-# cuda_target
-# object_files )
-# -- Compute the name of the intermediate link file used for separable
-# compilation. This file name is typically passed into
-# CUDA_LINK_SEPARABLE_COMPILATION_OBJECTS. output_file_var is produced
-# based on cuda_target the list of objects files that need separable
-# compilation as specified by object_files. If the object_files list is
-# empty, then output_file_var will be empty. This function is called
-# automatically for CUDA_ADD_LIBRARY and CUDA_ADD_EXECUTABLE. Note that
-# this is a function and not a macro.
-#
-# CUDA_INCLUDE_DIRECTORIES( path0 path1 ... )
-# -- Sets the directories that should be passed to nvcc
-# (e.g. nvcc -Ipath0 -Ipath1 ... ). These paths usually contain other .cu
-# files.
-#
-#
-# CUDA_LINK_SEPARABLE_COMPILATION_OBJECTS( output_file_var cuda_target
-# nvcc_flags object_files)
-#
-# -- Generates the link object required by separable compilation from the given
-# object files. This is called automatically for CUDA_ADD_EXECUTABLE and
-# CUDA_ADD_LIBRARY, but can be called manually when using CUDA_WRAP_SRCS
-# directly. When called from CUDA_ADD_LIBRARY or CUDA_ADD_EXECUTABLE the
-# nvcc_flags passed in are the same as the flags passed in via the OPTIONS
-# argument. The only nvcc flag added automatically is the bitness flag as
-# specified by CUDA_64_BIT_DEVICE_CODE. Note that this is a function
-# instead of a macro.
-#
-# CUDA_WRAP_SRCS ( cuda_target format generated_files file0 file1 ...
-# [STATIC | SHARED | MODULE] [OPTIONS ...] )
-# -- This is where all the magic happens. CUDA_ADD_EXECUTABLE,
-# CUDA_ADD_LIBRARY, CUDA_COMPILE, and CUDA_COMPILE_PTX all call this
-# function under the hood.
-#
-# Given the list of files (file0 file1 ... fileN) this macro generates
-# custom commands that generate either PTX or linkable objects (use "PTX" or
-# "OBJ" for the format argument to switch). Files that don't end with .cu
-# or have the HEADER_FILE_ONLY property are ignored.
-#
-# The arguments passed in after OPTIONS are extra command line options to
-# give to nvcc. You can also specify per configuration options by
-# specifying the name of the configuration followed by the options. General
-# options must preceed configuration specific options. Not all
-# configurations need to be specified, only the ones provided will be used.
-#
-# OPTIONS -DFLAG=2 "-DFLAG_OTHER=space in flag"
-# DEBUG -g
-# RELEASE --use_fast_math
-# RELWITHDEBINFO --use_fast_math;-g
-# MINSIZEREL --use_fast_math
-#
-# For certain configurations (namely VS generating object files with
-# CUDA_ATTACH_VS_BUILD_RULE_TO_CUDA_FILE set to ON), no generated file will
-# be produced for the given cuda file. This is because when you add the
-# cuda file to Visual Studio it knows that this file produces an object file
-# and will link in the resulting object file automatically.
-#
-# This script will also generate a separate cmake script that is used at
-# build time to invoke nvcc. This is for several reasons.
-#
-# 1. nvcc can return negative numbers as return values which confuses
-# Visual Studio into thinking that the command succeeded. The script now
-# checks the error codes and produces errors when there was a problem.
-#
-# 2. nvcc has been known to not delete incomplete results when it
-# encounters problems. This confuses build systems into thinking the
-# target was generated when in fact an unusable file exists. The script
-# now deletes the output files if there was an error.
-#
-# 3. By putting all the options that affect the build into a file and then
-# make the build rule dependent on the file, the output files will be
-# regenerated when the options change.
-#
-# This script also looks at optional arguments STATIC, SHARED, or MODULE to
-# determine when to target the object compilation for a shared library.
-# BUILD_SHARED_LIBS is ignored in CUDA_WRAP_SRCS, but it is respected in
-# CUDA_ADD_LIBRARY. On some systems special flags are added for building
-# objects intended for shared libraries. A preprocessor macro,
-# <target_name>_EXPORTS is defined when a shared library compilation is
-# detected.
-#
-# Flags passed into add_definitions with -D or /D are passed along to nvcc.
+# ::
+#
+# CUDA_ADD_CUFFT_TO_TARGET( cuda_target )
+# -- Adds the cufft library to the target (can be any target). Handles whether
+# you are in emulation mode or not.
+#
+#
+#
+# ::
+#
+# CUDA_ADD_CUBLAS_TO_TARGET( cuda_target )
+# -- Adds the cublas library to the target (can be any target). Handles
+# whether you are in emulation mode or not.
+#
+#
+#
+# ::
+#
+# CUDA_ADD_EXECUTABLE( cuda_target file0 file1 ...
+# [WIN32] [MACOSX_BUNDLE] [EXCLUDE_FROM_ALL] [OPTIONS ...] )
+# -- Creates an executable "cuda_target" which is made up of the files
+# specified. All of the non CUDA C files are compiled using the standard
+# build rules specified by CMAKE and the cuda files are compiled to object
+# files using nvcc and the host compiler. In addition CUDA_INCLUDE_DIRS is
+# added automatically to include_directories(). Some standard CMake target
+# calls can be used on the target after calling this macro
+# (e.g. set_target_properties and target_link_libraries), but setting
+# properties that adjust compilation flags will not affect code compiled by
+# nvcc. Such flags should be modified before calling CUDA_ADD_EXECUTABLE,
+# CUDA_ADD_LIBRARY or CUDA_WRAP_SRCS.
+#
+#
+#
+# ::
+#
+# CUDA_ADD_LIBRARY( cuda_target file0 file1 ...
+# [STATIC | SHARED | MODULE] [EXCLUDE_FROM_ALL] [OPTIONS ...] )
+# -- Same as CUDA_ADD_EXECUTABLE except that a library is created.
+#
+#
+#
+# ::
+#
+# CUDA_BUILD_CLEAN_TARGET()
+# -- Creates a convience target that deletes all the dependency files
+# generated. You should make clean after running this target to ensure the
+# dependency files get regenerated.
+#
+#
+#
+# ::
+#
+# CUDA_COMPILE( generated_files file0 file1 ... [STATIC | SHARED | MODULE]
+# [OPTIONS ...] )
+# -- Returns a list of generated files from the input source files to be used
+# with ADD_LIBRARY or ADD_EXECUTABLE.
+#
+#
+#
+# ::
+#
+# CUDA_COMPILE_PTX( generated_files file0 file1 ... [OPTIONS ...] )
+# -- Returns a list of PTX files generated from the input source files.
+#
+#
+#
+# ::
+#
+# CUDA_COMPUTE_SEPARABLE_COMPILATION_OBJECT_FILE_NAME( output_file_var
+# cuda_target
+# object_files )
+# -- Compute the name of the intermediate link file used for separable
+# compilation. This file name is typically passed into
+# CUDA_LINK_SEPARABLE_COMPILATION_OBJECTS. output_file_var is produced
+# based on cuda_target the list of objects files that need separable
+# compilation as specified by object_files. If the object_files list is
+# empty, then output_file_var will be empty. This function is called
+# automatically for CUDA_ADD_LIBRARY and CUDA_ADD_EXECUTABLE. Note that
+# this is a function and not a macro.
+#
+#
+#
+# ::
+#
+# CUDA_INCLUDE_DIRECTORIES( path0 path1 ... )
+# -- Sets the directories that should be passed to nvcc
+# (e.g. nvcc -Ipath0 -Ipath1 ... ). These paths usually contain other .cu
+# files.
+#
+#
+#
+#
+#
+# ::
+#
+# CUDA_LINK_SEPARABLE_COMPILATION_OBJECTS( output_file_var cuda_target
+# nvcc_flags object_files)
+#
+#
+#
+# ::
+#
+# -- Generates the link object required by separable compilation from the given
+# object files. This is called automatically for CUDA_ADD_EXECUTABLE and
+# CUDA_ADD_LIBRARY, but can be called manually when using CUDA_WRAP_SRCS
+# directly. When called from CUDA_ADD_LIBRARY or CUDA_ADD_EXECUTABLE the
+# nvcc_flags passed in are the same as the flags passed in via the OPTIONS
+# argument. The only nvcc flag added automatically is the bitness flag as
+# specified by CUDA_64_BIT_DEVICE_CODE. Note that this is a function
+# instead of a macro.
+#
+#
+#
+# ::
+#
+# CUDA_WRAP_SRCS ( cuda_target format generated_files file0 file1 ...
+# [STATIC | SHARED | MODULE] [OPTIONS ...] )
+# -- This is where all the magic happens. CUDA_ADD_EXECUTABLE,
+# CUDA_ADD_LIBRARY, CUDA_COMPILE, and CUDA_COMPILE_PTX all call this
+# function under the hood.
+#
+#
+#
+# ::
+#
+# Given the list of files (file0 file1 ... fileN) this macro generates
+# custom commands that generate either PTX or linkable objects (use "PTX" or
+# "OBJ" for the format argument to switch). Files that don't end with .cu
+# or have the HEADER_FILE_ONLY property are ignored.
+#
+#
+#
+# ::
+#
+# The arguments passed in after OPTIONS are extra command line options to
+# give to nvcc. You can also specify per configuration options by
+# specifying the name of the configuration followed by the options. General
+# options must preceed configuration specific options. Not all
+# configurations need to be specified, only the ones provided will be used.
+#
+#
+#
+# ::
+#
+# OPTIONS -DFLAG=2 "-DFLAG_OTHER=space in flag"
+# DEBUG -g
+# RELEASE --use_fast_math
+# RELWITHDEBINFO --use_fast_math;-g
+# MINSIZEREL --use_fast_math
+#
+#
+#
+# ::
+#
+# For certain configurations (namely VS generating object files with
+# CUDA_ATTACH_VS_BUILD_RULE_TO_CUDA_FILE set to ON), no generated file will
+# be produced for the given cuda file. This is because when you add the
+# cuda file to Visual Studio it knows that this file produces an object file
+# and will link in the resulting object file automatically.
+#
+#
+#
+# ::
+#
+# This script will also generate a separate cmake script that is used at
+# build time to invoke nvcc. This is for several reasons.
+#
+#
+#
+# ::
+#
+# 1. nvcc can return negative numbers as return values which confuses
+# Visual Studio into thinking that the command succeeded. The script now
+# checks the error codes and produces errors when there was a problem.
+#
+#
+#
+# ::
+#
+# 2. nvcc has been known to not delete incomplete results when it
+# encounters problems. This confuses build systems into thinking the
+# target was generated when in fact an unusable file exists. The script
+# now deletes the output files if there was an error.
+#
+#
+#
+# ::
+#
+# 3. By putting all the options that affect the build into a file and then
+# make the build rule dependent on the file, the output files will be
+# regenerated when the options change.
+#
+#
+#
+# ::
+#
+# This script also looks at optional arguments STATIC, SHARED, or MODULE to
+# determine when to target the object compilation for a shared library.
+# BUILD_SHARED_LIBS is ignored in CUDA_WRAP_SRCS, but it is respected in
+# CUDA_ADD_LIBRARY. On some systems special flags are added for building
+# objects intended for shared libraries. A preprocessor macro,
+# <target_name>_EXPORTS is defined when a shared library compilation is
+# detected.
+#
+#
+#
+# ::
+#
+# Flags passed into add_definitions with -D or /D are passed along to nvcc.
+#
+#
#
# The script defines the following variables:
#
-# CUDA_VERSION_MAJOR -- The major version of cuda as reported by nvcc.
-# CUDA_VERSION_MINOR -- The minor version.
-# CUDA_VERSION
-# CUDA_VERSION_STRING -- CUDA_VERSION_MAJOR.CUDA_VERSION_MINOR
-#
-# CUDA_TOOLKIT_ROOT_DIR -- Path to the CUDA Toolkit (defined if not set).
-# CUDA_SDK_ROOT_DIR -- Path to the CUDA SDK. Use this to find files in the
-# SDK. This script will not directly support finding
-# specific libraries or headers, as that isn't
-# supported by NVIDIA. If you want to change
-# libraries when the path changes see the
-# FindCUDA.cmake script for an example of how to clear
-# these variables. There are also examples of how to
-# use the CUDA_SDK_ROOT_DIR to locate headers or
-# libraries, if you so choose (at your own risk).
-# CUDA_INCLUDE_DIRS -- Include directory for cuda headers. Added automatically
-# for CUDA_ADD_EXECUTABLE and CUDA_ADD_LIBRARY.
-# CUDA_LIBRARIES -- Cuda RT library.
-# CUDA_CUFFT_LIBRARIES -- Device or emulation library for the Cuda FFT
-# implementation (alternative to:
-# CUDA_ADD_CUFFT_TO_TARGET macro)
-# CUDA_CUBLAS_LIBRARIES -- Device or emulation library for the Cuda BLAS
-# implementation (alterative to:
-# CUDA_ADD_CUBLAS_TO_TARGET macro).
-# CUDA_cupti_LIBRARY -- CUDA Profiling Tools Interface library.
-# Only available for CUDA version 4.0+.
-# CUDA_curand_LIBRARY -- CUDA Random Number Generation library.
-# Only available for CUDA version 3.2+.
-# CUDA_cusparse_LIBRARY -- CUDA Sparse Matrix library.
-# Only available for CUDA version 3.2+.
-# CUDA_npp_LIBRARY -- NVIDIA Performance Primitives library.
-# Only available for CUDA version 4.0+.
-# CUDA_nppc_LIBRARY -- NVIDIA Performance Primitives library (core).
-# Only available for CUDA version 5.5+.
-# CUDA_nppi_LIBRARY -- NVIDIA Performance Primitives library (image processing).
-# Only available for CUDA version 5.5+.
-# CUDA_npps_LIBRARY -- NVIDIA Performance Primitives library (signal processing).
-# Only available for CUDA version 5.5+.
-# CUDA_nvcuvenc_LIBRARY -- CUDA Video Encoder library.
-# Only available for CUDA version 3.2+.
-# Windows only.
-# CUDA_nvcuvid_LIBRARY -- CUDA Video Decoder library.
-# Only available for CUDA version 3.2+.
-# Windows only.
-#
-#
-# James Bigler, NVIDIA Corp (nvidia.com - jbigler)
-# Abe Stephens, SCI Institute -- http://www.sci.utah.edu/~abe/FindCuda.html
-#
-# Copyright (c) 2008 - 2009 NVIDIA Corporation. All rights reserved.
-#
-# Copyright (c) 2007-2009
-# Scientific Computing and Imaging Institute, University of Utah
-#
-# This code is licensed under the MIT License. See the FindCUDA.cmake script
-# for the text of the license.
+# ::
+#
+# CUDA_VERSION_MAJOR -- The major version of cuda as reported by nvcc.
+# CUDA_VERSION_MINOR -- The minor version.
+# CUDA_VERSION
+# CUDA_VERSION_STRING -- CUDA_VERSION_MAJOR.CUDA_VERSION_MINOR
+#
+#
+#
+# ::
+#
+# CUDA_TOOLKIT_ROOT_DIR -- Path to the CUDA Toolkit (defined if not set).
+# CUDA_SDK_ROOT_DIR -- Path to the CUDA SDK. Use this to find files in the
+# SDK. This script will not directly support finding
+# specific libraries or headers, as that isn't
+# supported by NVIDIA. If you want to change
+# libraries when the path changes see the
+# FindCUDA.cmake script for an example of how to clear
+# these variables. There are also examples of how to
+# use the CUDA_SDK_ROOT_DIR to locate headers or
+# libraries, if you so choose (at your own risk).
+# CUDA_INCLUDE_DIRS -- Include directory for cuda headers. Added automatically
+# for CUDA_ADD_EXECUTABLE and CUDA_ADD_LIBRARY.
+# CUDA_LIBRARIES -- Cuda RT library.
+# CUDA_CUFFT_LIBRARIES -- Device or emulation library for the Cuda FFT
+# implementation (alternative to:
+# CUDA_ADD_CUFFT_TO_TARGET macro)
+# CUDA_CUBLAS_LIBRARIES -- Device or emulation library for the Cuda BLAS
+# implementation (alterative to:
+# CUDA_ADD_CUBLAS_TO_TARGET macro).
+# CUDA_cupti_LIBRARY -- CUDA Profiling Tools Interface library.
+# Only available for CUDA version 4.0+.
+# CUDA_curand_LIBRARY -- CUDA Random Number Generation library.
+# Only available for CUDA version 3.2+.
+# CUDA_cusparse_LIBRARY -- CUDA Sparse Matrix library.
+# Only available for CUDA version 3.2+.
+# CUDA_npp_LIBRARY -- NVIDIA Performance Primitives library.
+# Only available for CUDA version 4.0+.
+# CUDA_nppc_LIBRARY -- NVIDIA Performance Primitives library (core).
+# Only available for CUDA version 5.5+.
+# CUDA_nppi_LIBRARY -- NVIDIA Performance Primitives library (image processing).
+# Only available for CUDA version 5.5+.
+# CUDA_npps_LIBRARY -- NVIDIA Performance Primitives library (signal processing).
+# Only available for CUDA version 5.5+.
+# CUDA_nvcuvenc_LIBRARY -- CUDA Video Encoder library.
+# Only available for CUDA version 3.2+.
+# Windows only.
+# CUDA_nvcuvid_LIBRARY -- CUDA Video Decoder library.
+# Only available for CUDA version 3.2+.
+# Windows only.
+#
+#
+#
+#
+#
+# ::
+#
+# James Bigler, NVIDIA Corp (nvidia.com - jbigler)
+# Abe Stephens, SCI Institute -- http://www.sci.utah.edu/~abe/FindCuda.html
+#
+#
+#
+# ::
+#
+# Copyright (c) 2008 - 2009 NVIDIA Corporation. All rights reserved.
+#
+#
+#
+# ::
+#
+# Copyright (c) 2007-2009
+# Scientific Computing and Imaging Institute, University of Utah
+#
+#
+#
+# ::
+#
+# This code is licensed under the MIT License. See the FindCUDA.cmake script
+# for the text of the license.
# The MIT License
#
diff --git a/Modules/FindCURL.cmake b/Modules/FindCURL.cmake
index 0fb8f45d4f..209fd877de 100644
--- a/Modules/FindCURL.cmake
+++ b/Modules/FindCURL.cmake
@@ -1,10 +1,17 @@
-# - Find curl
+#.rst:
+# FindCURL
+# --------
+#
+# Find curl
+#
# Find the native CURL headers and libraries.
#
-# CURL_INCLUDE_DIRS - where to find curl/curl.h, etc.
-# CURL_LIBRARIES - List of libraries when using curl.
-# CURL_FOUND - True if curl found.
-# CURL_VERSION_STRING - the version of curl found (since CMake 2.8.8)
+# ::
+#
+# CURL_INCLUDE_DIRS - where to find curl/curl.h, etc.
+# CURL_LIBRARIES - List of libraries when using curl.
+# CURL_FOUND - True if curl found.
+# CURL_VERSION_STRING - the version of curl found (since CMake 2.8.8)
#=============================================================================
# Copyright 2006-2009 Kitware, Inc.
diff --git a/Modules/FindCVS.cmake b/Modules/FindCVS.cmake
index 07079bb5ab..6f545dfd5a 100644
--- a/Modules/FindCVS.cmake
+++ b/Modules/FindCVS.cmake
@@ -1,11 +1,24 @@
+#.rst:
+# FindCVS
+# -------
+#
+#
+#
# The module defines the following variables:
-# CVS_EXECUTABLE - path to cvs command line client
-# CVS_FOUND - true if the command line client was found
+#
+# ::
+#
+# CVS_EXECUTABLE - path to cvs command line client
+# CVS_FOUND - true if the command line client was found
+#
# Example usage:
-# find_package(CVS)
-# if(CVS_FOUND)
-# message("CVS found: ${CVS_EXECUTABLE}")
-# endif()
+#
+# ::
+#
+# find_package(CVS)
+# if(CVS_FOUND)
+# message("CVS found: ${CVS_EXECUTABLE}")
+# endif()
#=============================================================================
# Copyright 2008-2009 Kitware, Inc.
diff --git a/Modules/FindCoin3D.cmake b/Modules/FindCoin3D.cmake
index bbda87b3a0..b5c3a96791 100644
--- a/Modules/FindCoin3D.cmake
+++ b/Modules/FindCoin3D.cmake
@@ -1,13 +1,20 @@
-# - Find Coin3D (Open Inventor)
-# Coin3D is an implementation of the Open Inventor API.
-# It provides data structures and algorithms for 3D visualization
+#.rst:
+# FindCoin3D
+# ----------
+#
+# Find Coin3D (Open Inventor)
+#
+# Coin3D is an implementation of the Open Inventor API. It provides
+# data structures and algorithms for 3D visualization
# http://www.coin3d.org/
#
# This module defines the following variables
-# COIN3D_FOUND - system has Coin3D - Open Inventor
-# COIN3D_INCLUDE_DIRS - where the Inventor include directory can be found
-# COIN3D_LIBRARIES - Link to this to use Coin3D
#
+# ::
+#
+# COIN3D_FOUND - system has Coin3D - Open Inventor
+# COIN3D_INCLUDE_DIRS - where the Inventor include directory can be found
+# COIN3D_LIBRARIES - Link to this to use Coin3D
#=============================================================================
# Copyright 2008-2009 Kitware, Inc.
diff --git a/Modules/FindCups.cmake b/Modules/FindCups.cmake
index 53ab031cff..4b55d6a58e 100644
--- a/Modules/FindCups.cmake
+++ b/Modules/FindCups.cmake
@@ -1,12 +1,19 @@
-# - Try to find the Cups printing system
+#.rst:
+# FindCups
+# --------
+#
+# Try to find the Cups printing system
+#
# Once done this will define
#
-# CUPS_FOUND - system has Cups
-# CUPS_INCLUDE_DIR - the Cups include directory
-# CUPS_LIBRARIES - Libraries needed to use Cups
-# CUPS_VERSION_STRING - version of Cups found (since CMake 2.8.8)
-# Set CUPS_REQUIRE_IPP_DELETE_ATTRIBUTE to TRUE if you need a version which
-# features this function (i.e. at least 1.1.19)
+# ::
+#
+# CUPS_FOUND - system has Cups
+# CUPS_INCLUDE_DIR - the Cups include directory
+# CUPS_LIBRARIES - Libraries needed to use Cups
+# CUPS_VERSION_STRING - version of Cups found (since CMake 2.8.8)
+# Set CUPS_REQUIRE_IPP_DELETE_ATTRIBUTE to TRUE if you need a version which
+# features this function (i.e. at least 1.1.19)
#=============================================================================
# Copyright 2006-2009 Kitware, Inc.
diff --git a/Modules/FindCurses.cmake b/Modules/FindCurses.cmake
index 09d1ba401b..971edb75f3 100644
--- a/Modules/FindCurses.cmake
+++ b/Modules/FindCurses.cmake
@@ -1,16 +1,26 @@
-# - Find the curses include file and library
+#.rst:
+# FindCurses
+# ----------
#
-# CURSES_FOUND - system has Curses
-# CURSES_INCLUDE_DIR - the Curses include directory
-# CURSES_LIBRARIES - The libraries needed to use Curses
-# CURSES_HAVE_CURSES_H - true if curses.h is available
-# CURSES_HAVE_NCURSES_H - true if ncurses.h is available
-# CURSES_HAVE_NCURSES_NCURSES_H - true if ncurses/ncurses.h is available
-# CURSES_HAVE_NCURSES_CURSES_H - true if ncurses/curses.h is available
-# CURSES_LIBRARY - set for backwards compatibility with 2.4 CMake
+# Find the curses include file and library
#
-# Set CURSES_NEED_NCURSES to TRUE before the find_package() command if NCurses
-# functionality is required.
+#
+#
+# ::
+#
+# CURSES_FOUND - system has Curses
+# CURSES_INCLUDE_DIR - the Curses include directory
+# CURSES_LIBRARIES - The libraries needed to use Curses
+# CURSES_HAVE_CURSES_H - true if curses.h is available
+# CURSES_HAVE_NCURSES_H - true if ncurses.h is available
+# CURSES_HAVE_NCURSES_NCURSES_H - true if ncurses/ncurses.h is available
+# CURSES_HAVE_NCURSES_CURSES_H - true if ncurses/curses.h is available
+# CURSES_LIBRARY - set for backwards compatibility with 2.4 CMake
+#
+#
+#
+# Set CURSES_NEED_NCURSES to TRUE before the find_package() command if
+# NCurses functionality is required.
#=============================================================================
# Copyright 2001-2009 Kitware, Inc.
diff --git a/Modules/FindCxxTest.cmake b/Modules/FindCxxTest.cmake
index 48de64afd9..bc0dfbcca0 100644
--- a/Modules/FindCxxTest.cmake
+++ b/Modules/FindCxxTest.cmake
@@ -1,88 +1,138 @@
-# - Find CxxTest
-# Find the CxxTest suite and declare a helper macro for creating unit tests
-# and integrating them with CTest.
-# For more details on CxxTest see http://cxxtest.tigris.org
+#.rst:
+# FindCxxTest
+# -----------
+#
+# Find CxxTest
+#
+# Find the CxxTest suite and declare a helper macro for creating unit
+# tests and integrating them with CTest. For more details on CxxTest
+# see http://cxxtest.tigris.org
#
# INPUT Variables
#
-# CXXTEST_USE_PYTHON [deprecated since 1.3]
-# Only used in the case both Python & Perl
-# are detected on the system to control
-# which CxxTest code generator is used.
-# Valid only for CxxTest version 3.
+# ::
+#
+# CXXTEST_USE_PYTHON [deprecated since 1.3]
+# Only used in the case both Python & Perl
+# are detected on the system to control
+# which CxxTest code generator is used.
+# Valid only for CxxTest version 3.
+#
+#
+#
+# ::
+#
+# NOTE: In older versions of this Find Module,
+# this variable controlled if the Python test
+# generator was used instead of the Perl one,
+# regardless of which scripting language the
+# user had installed.
+#
+#
+#
+# ::
+#
+# CXXTEST_TESTGEN_ARGS (since CMake 2.8.3)
+# Specify a list of options to pass to the CxxTest code
+# generator. If not defined, --error-printer is
+# passed.
#
-# NOTE: In older versions of this Find Module,
-# this variable controlled if the Python test
-# generator was used instead of the Perl one,
-# regardless of which scripting language the
-# user had installed.
#
-# CXXTEST_TESTGEN_ARGS (since CMake 2.8.3)
-# Specify a list of options to pass to the CxxTest code
-# generator. If not defined, --error-printer is
-# passed.
#
# OUTPUT Variables
#
-# CXXTEST_FOUND
-# True if the CxxTest framework was found
-# CXXTEST_INCLUDE_DIRS
-# Where to find the CxxTest include directory
-# CXXTEST_PERL_TESTGEN_EXECUTABLE
-# The perl-based test generator
-# CXXTEST_PYTHON_TESTGEN_EXECUTABLE
-# The python-based test generator
-# CXXTEST_TESTGEN_EXECUTABLE (since CMake 2.8.3)
-# The test generator that is actually used (chosen using user preferences
-# and interpreters found in the system)
-# CXXTEST_TESTGEN_INTERPRETER (since CMake 2.8.3)
-# The full path to the Perl or Python executable on the system
+# ::
+#
+# CXXTEST_FOUND
+# True if the CxxTest framework was found
+# CXXTEST_INCLUDE_DIRS
+# Where to find the CxxTest include directory
+# CXXTEST_PERL_TESTGEN_EXECUTABLE
+# The perl-based test generator
+# CXXTEST_PYTHON_TESTGEN_EXECUTABLE
+# The python-based test generator
+# CXXTEST_TESTGEN_EXECUTABLE (since CMake 2.8.3)
+# The test generator that is actually used (chosen using user preferences
+# and interpreters found in the system)
+# CXXTEST_TESTGEN_INTERPRETER (since CMake 2.8.3)
+# The full path to the Perl or Python executable on the system
+#
+#
#
# MACROS for optional use by CMake users:
#
-# CXXTEST_ADD_TEST(<test_name> <gen_source_file> <input_files_to_testgen...>)
-# Creates a CxxTest runner and adds it to the CTest testing suite
-# Parameters:
-# test_name The name of the test
-# gen_source_file The generated source filename to be
-# generated by CxxTest
-# input_files_to_testgen The list of header files containing the
-# CxxTest::TestSuite's to be included in
-# this runner
-#
-# #==============
-# Example Usage:
-#
-# find_package(CxxTest)
-# if(CXXTEST_FOUND)
-# include_directories(${CXXTEST_INCLUDE_DIR})
-# enable_testing()
-#
-# CXXTEST_ADD_TEST(unittest_foo foo_test.cc
-# ${CMAKE_CURRENT_SOURCE_DIR}/foo_test.h)
-# target_link_libraries(unittest_foo foo) # as needed
-# endif()
-#
-# This will (if CxxTest is found):
-# 1. Invoke the testgen executable to autogenerate foo_test.cc in the
-# binary tree from "foo_test.h" in the current source directory.
-# 2. Create an executable and test called unittest_foo.
-#
-# #=============
-# Example foo_test.h:
-#
-# #include <cxxtest/TestSuite.h>
-#
-# class MyTestSuite : public CxxTest::TestSuite
-# {
-# public:
-# void testAddition( void )
-# {
-# TS_ASSERT( 1 + 1 > 1 );
-# TS_ASSERT_EQUALS( 1 + 1, 2 );
-# }
-# };
+# ::
+#
+# CXXTEST_ADD_TEST(<test_name> <gen_source_file> <input_files_to_testgen...>)
+# Creates a CxxTest runner and adds it to the CTest testing suite
+# Parameters:
+# test_name The name of the test
+# gen_source_file The generated source filename to be
+# generated by CxxTest
+# input_files_to_testgen The list of header files containing the
+# CxxTest::TestSuite's to be included in
+# this runner
+#
+#
+#
+# ::
+#
+# #==============
+# Example Usage:
+#
+#
+#
+# ::
+#
+# find_package(CxxTest)
+# if(CXXTEST_FOUND)
+# include_directories(${CXXTEST_INCLUDE_DIR})
+# enable_testing()
+#
+#
+#
+# ::
+#
+# CXXTEST_ADD_TEST(unittest_foo foo_test.cc
+# ${CMAKE_CURRENT_SOURCE_DIR}/foo_test.h)
+# target_link_libraries(unittest_foo foo) # as needed
+# endif()
+#
+#
+#
+# ::
+#
+# This will (if CxxTest is found):
+# 1. Invoke the testgen executable to autogenerate foo_test.cc in the
+# binary tree from "foo_test.h" in the current source directory.
+# 2. Create an executable and test called unittest_foo.
+#
+#
+#
+# ::
+#
+# #=============
+# Example foo_test.h:
+#
+#
+#
+# ::
+#
+# #include <cxxtest/TestSuite.h>
+#
+#
+#
+# ::
#
+# class MyTestSuite : public CxxTest::TestSuite
+# {
+# public:
+# void testAddition( void )
+# {
+# TS_ASSERT( 1 + 1 > 1 );
+# TS_ASSERT_EQUALS( 1 + 1, 2 );
+# }
+# };
#=============================================================================
# Copyright 2008-2010 Kitware, Inc.
diff --git a/Modules/FindCygwin.cmake b/Modules/FindCygwin.cmake
index d7ab7cc80f..5cb533b0b8 100644
--- a/Modules/FindCygwin.cmake
+++ b/Modules/FindCygwin.cmake
@@ -1,5 +1,8 @@
-# - this module looks for Cygwin
+#.rst:
+# FindCygwin
+# ----------
#
+# this module looks for Cygwin
#=============================================================================
# Copyright 2001-2009 Kitware, Inc.
diff --git a/Modules/FindDCMTK.cmake b/Modules/FindDCMTK.cmake
index 361d09e8bc..91aafbbd02 100644
--- a/Modules/FindDCMTK.cmake
+++ b/Modules/FindDCMTK.cmake
@@ -1,5 +1,8 @@
-# - find DCMTK libraries and applications
+#.rst:
+# FindDCMTK
+# ---------
#
+# find DCMTK libraries and applications
# DCMTK_INCLUDE_DIRS - Directories to include to use DCMTK
# DCMTK_LIBRARIES - Files to link against to use DCMTK
diff --git a/Modules/FindDart.cmake b/Modules/FindDart.cmake
index a2b2926a79..ea01fc2230 100644
--- a/Modules/FindDart.cmake
+++ b/Modules/FindDart.cmake
@@ -1,7 +1,11 @@
-# - Find DART
-# This module looks for the dart testing software and sets DART_ROOT
-# to point to where it found it.
+#.rst:
+# FindDart
+# --------
#
+# Find DART
+#
+# This module looks for the dart testing software and sets DART_ROOT to
+# point to where it found it.
#=============================================================================
# Copyright 2001-2009 Kitware, Inc.
diff --git a/Modules/FindDevIL.cmake b/Modules/FindDevIL.cmake
index dacc60422c..22a82b5d4f 100644
--- a/Modules/FindDevIL.cmake
+++ b/Modules/FindDevIL.cmake
@@ -1,23 +1,32 @@
+#.rst:
+# FindDevIL
+# ---------
+#
+#
+#
# This module locates the developer's image library.
# http://openil.sourceforge.net/
#
# This module sets:
-# IL_LIBRARIES - the name of the IL library. These include the full path to
-# the core DevIL library. This one has to be linked into the
-# application.
-# ILU_LIBRARIES - the name of the ILU library. Again, the full path. This
-# library is for filters and effects, not actual loading. It
-# doesn't have to be linked if the functionality it provides
-# is not used.
-# ILUT_LIBRARIES - the name of the ILUT library. Full path. This part of the
-# library interfaces with OpenGL. It is not strictly needed
-# in applications.
-# IL_INCLUDE_DIR - where to find the il.h, ilu.h and ilut.h files.
-# IL_FOUND - this is set to TRUE if all the above variables were set.
-# This will be set to false if ILU or ILUT are not found,
-# even if they are not needed. In most systems, if one
-# library is found all the others are as well. That's the
-# way the DevIL developers release it.
+#
+# ::
+#
+# IL_LIBRARIES - the name of the IL library. These include the full path to
+# the core DevIL library. This one has to be linked into the
+# application.
+# ILU_LIBRARIES - the name of the ILU library. Again, the full path. This
+# library is for filters and effects, not actual loading. It
+# doesn't have to be linked if the functionality it provides
+# is not used.
+# ILUT_LIBRARIES - the name of the ILUT library. Full path. This part of the
+# library interfaces with OpenGL. It is not strictly needed
+# in applications.
+# IL_INCLUDE_DIR - where to find the il.h, ilu.h and ilut.h files.
+# IL_FOUND - this is set to TRUE if all the above variables were set.
+# This will be set to false if ILU or ILUT are not found,
+# even if they are not needed. In most systems, if one
+# library is found all the others are as well. That's the
+# way the DevIL developers release it.
#=============================================================================
# Copyright 2008-2009 Kitware, Inc.
diff --git a/Modules/FindDoxygen.cmake b/Modules/FindDoxygen.cmake
index d2ede6ab94..a456d9c9f3 100644
--- a/Modules/FindDoxygen.cmake
+++ b/Modules/FindDoxygen.cmake
@@ -1,23 +1,36 @@
-# - This module looks for Doxygen and the path to Graphviz's dot
+#.rst:
+# FindDoxygen
+# -----------
+#
+# This module looks for Doxygen and the path to Graphviz's dot
+#
# Doxygen is a documentation generation tool. Please see
# http://www.doxygen.org
#
# This module accepts the following optional variables:
#
-# DOXYGEN_SKIP_DOT = If true this module will skip trying to find Dot
-# (an optional component often used by Doxygen)
+# ::
+#
+# DOXYGEN_SKIP_DOT = If true this module will skip trying to find Dot
+# (an optional component often used by Doxygen)
+#
+#
#
# This modules defines the following variables:
#
-# DOXYGEN_EXECUTABLE = The path to the doxygen command.
-# DOXYGEN_FOUND = Was Doxygen found or not?
-# DOXYGEN_VERSION = The version reported by doxygen --version
+# ::
+#
+# DOXYGEN_EXECUTABLE = The path to the doxygen command.
+# DOXYGEN_FOUND = Was Doxygen found or not?
+# DOXYGEN_VERSION = The version reported by doxygen --version
+#
#
-# DOXYGEN_DOT_EXECUTABLE = The path to the dot program used by doxygen.
-# DOXYGEN_DOT_FOUND = Was Dot found or not?
-# DOXYGEN_DOT_PATH = The path to dot not including the executable
#
+# ::
#
+# DOXYGEN_DOT_EXECUTABLE = The path to the dot program used by doxygen.
+# DOXYGEN_DOT_FOUND = Was Dot found or not?
+# DOXYGEN_DOT_PATH = The path to dot not including the executable
#=============================================================================
# Copyright 2001-2009 Kitware, Inc.
diff --git a/Modules/FindEXPAT.cmake b/Modules/FindEXPAT.cmake
index c681a0dfd2..6183af8ad6 100644
--- a/Modules/FindEXPAT.cmake
+++ b/Modules/FindEXPAT.cmake
@@ -1,9 +1,16 @@
-# - Find expat
+#.rst:
+# FindEXPAT
+# ---------
+#
+# Find expat
+#
# Find the native EXPAT headers and libraries.
#
-# EXPAT_INCLUDE_DIRS - where to find expat.h, etc.
-# EXPAT_LIBRARIES - List of libraries when using expat.
-# EXPAT_FOUND - True if expat found.
+# ::
+#
+# EXPAT_INCLUDE_DIRS - where to find expat.h, etc.
+# EXPAT_LIBRARIES - List of libraries when using expat.
+# EXPAT_FOUND - True if expat found.
#=============================================================================
# Copyright 2006-2009 Kitware, Inc.
diff --git a/Modules/FindFLEX.cmake b/Modules/FindFLEX.cmake
index 79a3a1e6c2..c837c52c7e 100644
--- a/Modules/FindFLEX.cmake
+++ b/Modules/FindFLEX.cmake
@@ -1,53 +1,92 @@
-# - Find flex executable and provides a macro to generate custom build rules
+#.rst:
+# FindFLEX
+# --------
+#
+# Find flex executable and provides a macro to generate custom build rules
+#
+#
#
# The module defines the following variables:
-# FLEX_FOUND - true is flex executable is found
-# FLEX_EXECUTABLE - the path to the flex executable
-# FLEX_VERSION - the version of flex
-# FLEX_LIBRARIES - The flex libraries
-# FLEX_INCLUDE_DIRS - The path to the flex headers
+#
+# ::
+#
+# FLEX_FOUND - true is flex executable is found
+# FLEX_EXECUTABLE - the path to the flex executable
+# FLEX_VERSION - the version of flex
+# FLEX_LIBRARIES - The flex libraries
+# FLEX_INCLUDE_DIRS - The path to the flex headers
+#
+#
#
# The minimum required version of flex can be specified using the
-# standard syntax, e.g. find_package(FLEX 2.5.13)
+# standard syntax, e.g. find_package(FLEX 2.5.13)
+#
#
#
# If flex is found on the system, the module provides the macro:
-# FLEX_TARGET(Name FlexInput FlexOutput [COMPILE_FLAGS <string>])
-# which creates a custom command to generate the <FlexOutput> file from
-# the <FlexInput> file. If COMPILE_FLAGS option is specified, the next
-# parameter is added to the flex command line. Name is an alias used to
-# get details of this custom command. Indeed the macro defines the
+#
+# ::
+#
+# FLEX_TARGET(Name FlexInput FlexOutput [COMPILE_FLAGS <string>])
+#
+# which creates a custom command to generate the <FlexOutput> file from
+# the <FlexInput> file. If COMPILE_FLAGS option is specified, the next
+# parameter is added to the flex command line. Name is an alias used to
+# get details of this custom command. Indeed the macro defines the
# following variables:
-# FLEX_${Name}_DEFINED - true is the macro ran successfully
-# FLEX_${Name}_OUTPUTS - the source file generated by the custom rule, an
-# alias for FlexOutput
-# FLEX_${Name}_INPUT - the flex source file, an alias for ${FlexInput}
#
-# Flex scanners oftenly use tokens defined by Bison: the code generated
-# by Flex depends of the header generated by Bison. This module also
+# ::
+#
+# FLEX_${Name}_DEFINED - true is the macro ran successfully
+# FLEX_${Name}_OUTPUTS - the source file generated by the custom rule, an
+# alias for FlexOutput
+# FLEX_${Name}_INPUT - the flex source file, an alias for ${FlexInput}
+#
+#
+#
+# Flex scanners oftenly use tokens defined by Bison: the code generated
+# by Flex depends of the header generated by Bison. This module also
# defines a macro:
-# ADD_FLEX_BISON_DEPENDENCY(FlexTarget BisonTarget)
-# which adds the required dependency between a scanner and a parser
-# where <FlexTarget> and <BisonTarget> are the first parameters of
+#
+# ::
+#
+# ADD_FLEX_BISON_DEPENDENCY(FlexTarget BisonTarget)
+#
+# which adds the required dependency between a scanner and a parser
+# where <FlexTarget> and <BisonTarget> are the first parameters of
# respectively FLEX_TARGET and BISON_TARGET macros.
#
-# ====================================================================
-# Example:
+# ::
+#
+# ====================================================================
+# Example:
+#
+#
+#
+# ::
+#
+# find_package(BISON)
+# find_package(FLEX)
+#
+#
+#
+# ::
+#
+# BISON_TARGET(MyParser parser.y ${CMAKE_CURRENT_BINARY_DIR}/parser.cpp)
+# FLEX_TARGET(MyScanner lexer.l ${CMAKE_CURRENT_BINARY_DIR}/lexer.cpp)
+# ADD_FLEX_BISON_DEPENDENCY(MyScanner MyParser)
+#
#
-# find_package(BISON)
-# find_package(FLEX)
#
-# BISON_TARGET(MyParser parser.y ${CMAKE_CURRENT_BINARY_DIR}/parser.cpp)
-# FLEX_TARGET(MyScanner lexer.l ${CMAKE_CURRENT_BINARY_DIR}/lexer.cpp)
-# ADD_FLEX_BISON_DEPENDENCY(MyScanner MyParser)
+# ::
#
-# include_directories(${CMAKE_CURRENT_BINARY_DIR})
-# add_executable(Foo
-# Foo.cc
-# ${BISON_MyParser_OUTPUTS}
-# ${FLEX_MyScanner_OUTPUTS}
-# )
-# ====================================================================
+# include_directories(${CMAKE_CURRENT_BINARY_DIR})
+# add_executable(Foo
+# Foo.cc
+# ${BISON_MyParser_OUTPUTS}
+# ${FLEX_MyScanner_OUTPUTS}
+# )
+# ====================================================================
#=============================================================================
# Copyright 2009 Kitware, Inc.
diff --git a/Modules/FindFLTK.cmake b/Modules/FindFLTK.cmake
index 92c14daede..b87bc7fb79 100644
--- a/Modules/FindFLTK.cmake
+++ b/Modules/FindFLTK.cmake
@@ -1,33 +1,58 @@
-# - Find the native FLTK includes and library
+#.rst:
+# FindFLTK
+# --------
#
-# By default FindFLTK.cmake will search for all of the FLTK components and
-# add them to the FLTK_LIBRARIES variable.
+# Find the native FLTK includes and library
#
-# You can limit the components which get placed in FLTK_LIBRARIES by
-# defining one or more of the following three options:
#
-# FLTK_SKIP_OPENGL, set to true to disable searching for opengl and
-# the FLTK GL library
-# FLTK_SKIP_FORMS, set to true to disable searching for fltk_forms
-# FLTK_SKIP_IMAGES, set to true to disable searching for fltk_images
#
-# FLTK_SKIP_FLUID, set to true if the fluid binary need not be present
-# at build time
+# By default FindFLTK.cmake will search for all of the FLTK components
+# and add them to the FLTK_LIBRARIES variable.
+#
+# ::
+#
+# You can limit the components which get placed in FLTK_LIBRARIES by
+# defining one or more of the following three options:
+#
+#
+#
+# ::
+#
+# FLTK_SKIP_OPENGL, set to true to disable searching for opengl and
+# the FLTK GL library
+# FLTK_SKIP_FORMS, set to true to disable searching for fltk_forms
+# FLTK_SKIP_IMAGES, set to true to disable searching for fltk_images
+#
+#
+#
+# ::
+#
+# FLTK_SKIP_FLUID, set to true if the fluid binary need not be present
+# at build time
+#
+#
#
# The following variables will be defined:
-# FLTK_FOUND, True if all components not skipped were found
-# FLTK_INCLUDE_DIR, where to find include files
-# FLTK_LIBRARIES, list of fltk libraries you should link against
-# FLTK_FLUID_EXECUTABLE, where to find the Fluid tool
-# FLTK_WRAP_UI, This enables the FLTK_WRAP_UI command
+#
+# ::
+#
+# FLTK_FOUND, True if all components not skipped were found
+# FLTK_INCLUDE_DIR, where to find include files
+# FLTK_LIBRARIES, list of fltk libraries you should link against
+# FLTK_FLUID_EXECUTABLE, where to find the Fluid tool
+# FLTK_WRAP_UI, This enables the FLTK_WRAP_UI command
+#
+#
#
# The following cache variables are assigned but should not be used.
# See the FLTK_LIBRARIES variable instead.
#
-# FLTK_BASE_LIBRARY = the full path to fltk.lib
-# FLTK_GL_LIBRARY = the full path to fltk_gl.lib
-# FLTK_FORMS_LIBRARY = the full path to fltk_forms.lib
-# FLTK_IMAGES_LIBRARY = the full path to fltk_images.lib
+# ::
+#
+# FLTK_BASE_LIBRARY = the full path to fltk.lib
+# FLTK_GL_LIBRARY = the full path to fltk_gl.lib
+# FLTK_FORMS_LIBRARY = the full path to fltk_forms.lib
+# FLTK_IMAGES_LIBRARY = the full path to fltk_images.lib
#=============================================================================
# Copyright 2001-2009 Kitware, Inc.
diff --git a/Modules/FindFLTK2.cmake b/Modules/FindFLTK2.cmake
index 09f6925cc3..4deffda93a 100644
--- a/Modules/FindFLTK2.cmake
+++ b/Modules/FindFLTK2.cmake
@@ -1,14 +1,26 @@
-# - Find the native FLTK2 includes and library
+#.rst:
+# FindFLTK2
+# ---------
+#
+# Find the native FLTK2 includes and library
+#
# The following settings are defined
-# FLTK2_FLUID_EXECUTABLE, where to find the Fluid tool
-# FLTK2_WRAP_UI, This enables the FLTK2_WRAP_UI command
-# FLTK2_INCLUDE_DIR, where to find include files
-# FLTK2_LIBRARIES, list of fltk2 libraries
-# FLTK2_FOUND, Don't use FLTK2 if false.
+#
+# ::
+#
+# FLTK2_FLUID_EXECUTABLE, where to find the Fluid tool
+# FLTK2_WRAP_UI, This enables the FLTK2_WRAP_UI command
+# FLTK2_INCLUDE_DIR, where to find include files
+# FLTK2_LIBRARIES, list of fltk2 libraries
+# FLTK2_FOUND, Don't use FLTK2 if false.
+#
# The following settings should not be used in general.
-# FLTK2_BASE_LIBRARY = the full path to fltk2.lib
-# FLTK2_GL_LIBRARY = the full path to fltk2_gl.lib
-# FLTK2_IMAGES_LIBRARY = the full path to fltk2_images.lib
+#
+# ::
+#
+# FLTK2_BASE_LIBRARY = the full path to fltk2.lib
+# FLTK2_GL_LIBRARY = the full path to fltk2_gl.lib
+# FLTK2_IMAGES_LIBRARY = the full path to fltk2_images.lib
#=============================================================================
# Copyright 2007-2009 Kitware, Inc.
diff --git a/Modules/FindFreetype.cmake b/Modules/FindFreetype.cmake
index ccea99165d..179dc0004a 100644
--- a/Modules/FindFreetype.cmake
+++ b/Modules/FindFreetype.cmake
@@ -1,16 +1,25 @@
-# - Locate FreeType library
+#.rst:
+# FindFreetype
+# ------------
+#
+# Locate FreeType library
+#
# This module defines
-# FREETYPE_LIBRARIES, the library to link against
-# FREETYPE_FOUND, if false, do not try to link to FREETYPE
-# FREETYPE_INCLUDE_DIRS, where to find headers.
-# FREETYPE_VERSION_STRING, the version of freetype found (since CMake 2.8.8)
-# This is the concatenation of the paths:
-# FREETYPE_INCLUDE_DIR_ft2build
-# FREETYPE_INCLUDE_DIR_freetype2
#
-# $FREETYPE_DIR is an environment variable that would
-# correspond to the ./configure --prefix=$FREETYPE_DIR
-# used in building FREETYPE.
+# ::
+#
+# FREETYPE_LIBRARIES, the library to link against
+# FREETYPE_FOUND, if false, do not try to link to FREETYPE
+# FREETYPE_INCLUDE_DIRS, where to find headers.
+# FREETYPE_VERSION_STRING, the version of freetype found (since CMake 2.8.8)
+# This is the concatenation of the paths:
+# FREETYPE_INCLUDE_DIR_ft2build
+# FREETYPE_INCLUDE_DIR_freetype2
+#
+#
+#
+# $FREETYPE_DIR is an environment variable that would correspond to the
+# ./configure --prefix=$FREETYPE_DIR used in building FREETYPE.
#=============================================================================
# Copyright 2007-2009 Kitware, Inc.
diff --git a/Modules/FindGCCXML.cmake b/Modules/FindGCCXML.cmake
index 05f08a6392..48618e2898 100644
--- a/Modules/FindGCCXML.cmake
+++ b/Modules/FindGCCXML.cmake
@@ -1,7 +1,16 @@
-# - Find the GCC-XML front-end executable.
+#.rst:
+# FindGCCXML
+# ----------
+#
+# Find the GCC-XML front-end executable.
+#
+#
#
# This module will define the following variables:
-# GCCXML - the GCC-XML front-end executable.
+#
+# ::
+#
+# GCCXML - the GCC-XML front-end executable.
#=============================================================================
# Copyright 2001-2009 Kitware, Inc.
diff --git a/Modules/FindGDAL.cmake b/Modules/FindGDAL.cmake
index 6e898474bb..4e04c311b2 100644
--- a/Modules/FindGDAL.cmake
+++ b/Modules/FindGDAL.cmake
@@ -1,14 +1,26 @@
+#.rst:
+# FindGDAL
+# --------
+#
+#
+#
# Locate gdal
#
# This module accepts the following environment variables:
#
-# GDAL_DIR or GDAL_ROOT - Specify the location of GDAL
+# ::
+#
+# GDAL_DIR or GDAL_ROOT - Specify the location of GDAL
+#
+#
#
# This module defines the following CMake variables:
#
-# GDAL_FOUND - True if libgdal is found
-# GDAL_LIBRARY - A variable pointing to the GDAL library
-# GDAL_INCLUDE_DIR - Where to find the headers
+# ::
+#
+# GDAL_FOUND - True if libgdal is found
+# GDAL_LIBRARY - A variable pointing to the GDAL library
+# GDAL_INCLUDE_DIR - Where to find the headers
#=============================================================================
# Copyright 2007-2009 Kitware, Inc.
diff --git a/Modules/FindGIF.cmake b/Modules/FindGIF.cmake
index 90ff7377f8..117ded76d6 100644
--- a/Modules/FindGIF.cmake
+++ b/Modules/FindGIF.cmake
@@ -1,14 +1,19 @@
-# This module searches giflib and defines
-# GIF_LIBRARIES - libraries to link to in order to use GIF
-# GIF_FOUND, if false, do not try to link
-# GIF_INCLUDE_DIR, where to find the headers
-# GIF_VERSION, reports either version 4 or 3 (for everything before version 4)
+#.rst:
+# FindGIF
+# -------
+#
+#
+#
+# This module searches giflib and defines GIF_LIBRARIES - libraries to
+# link to in order to use GIF GIF_FOUND, if false, do not try to link
+# GIF_INCLUDE_DIR, where to find the headers GIF_VERSION, reports either
+# version 4 or 3 (for everything before version 4)
#
# The minimum required version of giflib can be specified using the
-# standard syntax, e.g. find_package(GIF 4)
+# standard syntax, e.g. find_package(GIF 4)
#
-# $GIF_DIR is an environment variable that would
-# correspond to the ./configure --prefix=$GIF_DIR
+# $GIF_DIR is an environment variable that would correspond to the
+# ./configure --prefix=$GIF_DIR
#=============================================================================
# Copyright 2007-2009 Kitware, Inc.
diff --git a/Modules/FindGLEW.cmake b/Modules/FindGLEW.cmake
index 37dff0324b..497a80c072 100644
--- a/Modules/FindGLEW.cmake
+++ b/Modules/FindGLEW.cmake
@@ -1,8 +1,16 @@
-# - Find the OpenGL Extension Wrangler Library (GLEW)
+#.rst:
+# FindGLEW
+# --------
+#
+# Find the OpenGL Extension Wrangler Library (GLEW)
+#
# This module defines the following variables:
-# GLEW_INCLUDE_DIRS - include directories for GLEW
-# GLEW_LIBRARIES - libraries to link against GLEW
-# GLEW_FOUND - true if GLEW has been found and can be used
+#
+# ::
+#
+# GLEW_INCLUDE_DIRS - include directories for GLEW
+# GLEW_LIBRARIES - libraries to link against GLEW
+# GLEW_FOUND - true if GLEW has been found and can be used
#=============================================================================
# Copyright 2012 Benjamin Eikel
diff --git a/Modules/FindGLUT.cmake b/Modules/FindGLUT.cmake
index 843d1389ff..be7c0cd97c 100644
--- a/Modules/FindGLUT.cmake
+++ b/Modules/FindGLUT.cmake
@@ -1,11 +1,22 @@
-# - try to find glut library and include files
-# GLUT_INCLUDE_DIR, where to find GL/glut.h, etc.
-# GLUT_LIBRARIES, the libraries to link against
-# GLUT_FOUND, If false, do not try to use GLUT.
+#.rst:
+# FindGLUT
+# --------
+#
+# try to find glut library and include files
+#
+# ::
+#
+# GLUT_INCLUDE_DIR, where to find GL/glut.h, etc.
+# GLUT_LIBRARIES, the libraries to link against
+# GLUT_FOUND, If false, do not try to use GLUT.
+#
# Also defined, but not for general use are:
-# GLUT_glut_LIBRARY = the full path to the glut library.
-# GLUT_Xmu_LIBRARY = the full path to the Xmu library.
-# GLUT_Xi_LIBRARY = the full path to the Xi Library.
+#
+# ::
+#
+# GLUT_glut_LIBRARY = the full path to the glut library.
+# GLUT_Xmu_LIBRARY = the full path to the Xmu library.
+# GLUT_Xi_LIBRARY = the full path to the Xi Library.
#=============================================================================
# Copyright 2001-2009 Kitware, Inc.
diff --git a/Modules/FindGTK.cmake b/Modules/FindGTK.cmake
index 8a44ade410..01bca76c41 100644
--- a/Modules/FindGTK.cmake
+++ b/Modules/FindGTK.cmake
@@ -1,8 +1,15 @@
-# - try to find GTK (and glib) and GTKGLArea
-# GTK_INCLUDE_DIR - Directories to include to use GTK
-# GTK_LIBRARIES - Files to link against to use GTK
-# GTK_FOUND - GTK was found
-# GTK_GL_FOUND - GTK's GL features were found
+#.rst:
+# FindGTK
+# -------
+#
+# try to find GTK (and glib) and GTKGLArea
+#
+# ::
+#
+# GTK_INCLUDE_DIR - Directories to include to use GTK
+# GTK_LIBRARIES - Files to link against to use GTK
+# GTK_FOUND - GTK was found
+# GTK_GL_FOUND - GTK's GL features were found
#=============================================================================
# Copyright 2001-2009 Kitware, Inc.
diff --git a/Modules/FindGTK2.cmake b/Modules/FindGTK2.cmake
index 9d8c41b30d..25c482eb29 100644
--- a/Modules/FindGTK2.cmake
+++ b/Modules/FindGTK2.cmake
@@ -1,56 +1,98 @@
-# - FindGTK2.cmake
-# This module can find the GTK2 widget libraries and several of its other
-# optional components like gtkmm, glade, and glademm.
+#.rst:
+# FindGTK2
+# --------
+#
+# FindGTK2.cmake
+#
+# This module can find the GTK2 widget libraries and several of its
+# other optional components like gtkmm, glade, and glademm.
#
# NOTE: If you intend to use version checking, CMake 2.6.2 or later is
-# required.
#
-# Specify one or more of the following components
-# as you call this find module. See example below.
+# ::
+#
+# required.
+#
+#
+#
+# Specify one or more of the following components as you call this find
+# module. See example below.
+#
+# ::
+#
+# gtk
+# gtkmm
+# glade
+# glademm
+#
#
-# gtk
-# gtkmm
-# glade
-# glademm
#
# The following variables will be defined for your use
#
-# GTK2_FOUND - Were all of your specified components found?
-# GTK2_INCLUDE_DIRS - All include directories
-# GTK2_LIBRARIES - All libraries
-# GTK2_DEFINITIONS - Additional compiler flags
+# ::
+#
+# GTK2_FOUND - Were all of your specified components found?
+# GTK2_INCLUDE_DIRS - All include directories
+# GTK2_LIBRARIES - All libraries
+# GTK2_DEFINITIONS - Additional compiler flags
+#
+#
+#
+# ::
+#
+# GTK2_VERSION - The version of GTK2 found (x.y.z)
+# GTK2_MAJOR_VERSION - The major version of GTK2
+# GTK2_MINOR_VERSION - The minor version of GTK2
+# GTK2_PATCH_VERSION - The patch version of GTK2
+#
#
-# GTK2_VERSION - The version of GTK2 found (x.y.z)
-# GTK2_MAJOR_VERSION - The major version of GTK2
-# GTK2_MINOR_VERSION - The minor version of GTK2
-# GTK2_PATCH_VERSION - The patch version of GTK2
#
# Optional variables you can define prior to calling this module:
#
-# GTK2_DEBUG - Enables verbose debugging of the module
-# GTK2_ADDITIONAL_SUFFIXES - Allows defining additional directories to
-# search for include files
+# ::
+#
+# GTK2_DEBUG - Enables verbose debugging of the module
+# GTK2_ADDITIONAL_SUFFIXES - Allows defining additional directories to
+# search for include files
+#
+#
+#
+# ================= Example Usage:
+#
+# ::
+#
+# Call find_package() once, here are some examples to pick from:
+#
+#
+#
+# ::
+#
+# Require GTK 2.6 or later
+# find_package(GTK2 2.6 REQUIRED gtk)
+#
+#
+#
+# ::
+#
+# Require GTK 2.10 or later and Glade
+# find_package(GTK2 2.10 REQUIRED gtk glade)
+#
#
-#=================
-# Example Usage:
#
-# Call find_package() once, here are some examples to pick from:
+# ::
#
-# Require GTK 2.6 or later
-# find_package(GTK2 2.6 REQUIRED gtk)
+# Search for GTK/GTKMM 2.8 or later
+# find_package(GTK2 2.8 COMPONENTS gtk gtkmm)
#
-# Require GTK 2.10 or later and Glade
-# find_package(GTK2 2.10 REQUIRED gtk glade)
#
-# Search for GTK/GTKMM 2.8 or later
-# find_package(GTK2 2.8 COMPONENTS gtk gtkmm)
#
-# if(GTK2_FOUND)
-# include_directories(${GTK2_INCLUDE_DIRS})
-# add_executable(mygui mygui.cc)
-# target_link_libraries(mygui ${GTK2_LIBRARIES})
-# endif()
+# ::
#
+# if(GTK2_FOUND)
+# include_directories(${GTK2_INCLUDE_DIRS})
+# add_executable(mygui mygui.cc)
+# target_link_libraries(mygui ${GTK2_LIBRARIES})
+# endif()
#=============================================================================
# Copyright 2009 Kitware, Inc.
diff --git a/Modules/FindGTest.cmake b/Modules/FindGTest.cmake
index d531dd12d9..2c745404e9 100644
--- a/Modules/FindGTest.cmake
+++ b/Modules/FindGTest.cmake
@@ -1,58 +1,96 @@
+#.rst:
+# FindGTest
+# ---------
+#
+# --------------------
+#
# Locate the Google C++ Testing Framework.
#
# Defines the following variables:
#
-# GTEST_FOUND - Found the Google Testing framework
-# GTEST_INCLUDE_DIRS - Include directories
+# ::
+#
+# GTEST_FOUND - Found the Google Testing framework
+# GTEST_INCLUDE_DIRS - Include directories
+#
+#
+#
+# Also defines the library variables below as normal variables. These
+# contain debug/optimized keywords when a debugging library is found.
+#
+# ::
+#
+# GTEST_BOTH_LIBRARIES - Both libgtest & libgtest-main
+# GTEST_LIBRARIES - libgtest
+# GTEST_MAIN_LIBRARIES - libgtest-main
#
-# Also defines the library variables below as normal
-# variables. These contain debug/optimized keywords when
-# a debugging library is found.
#
-# GTEST_BOTH_LIBRARIES - Both libgtest & libgtest-main
-# GTEST_LIBRARIES - libgtest
-# GTEST_MAIN_LIBRARIES - libgtest-main
#
# Accepts the following variables as input:
#
-# GTEST_ROOT - (as a CMake or environment variable)
-# The root directory of the gtest install prefix
+# ::
+#
+# GTEST_ROOT - (as a CMake or environment variable)
+# The root directory of the gtest install prefix
+#
+#
+#
+# ::
+#
+# GTEST_MSVC_SEARCH - If compiling with MSVC, this variable can be set to
+# "MD" or "MT" to enable searching a GTest build tree
+# (defaults: "MD")
+#
#
-# GTEST_MSVC_SEARCH - If compiling with MSVC, this variable can be set to
-# "MD" or "MT" to enable searching a GTest build tree
-# (defaults: "MD")
#
-#-----------------------
# Example Usage:
#
-# enable_testing()
-# find_package(GTest REQUIRED)
-# include_directories(${GTEST_INCLUDE_DIRS})
+# ::
+#
+# enable_testing()
+# find_package(GTest REQUIRED)
+# include_directories(${GTEST_INCLUDE_DIRS})
#
-# add_executable(foo foo.cc)
-# target_link_libraries(foo ${GTEST_BOTH_LIBRARIES})
#
-# add_test(AllTestsInFoo foo)
#
-#-----------------------
+# ::
#
-# If you would like each Google test to show up in CTest as
-# a test you may use the following macro.
-# NOTE: It will slow down your tests by running an executable
-# for each test and test fixture. You will also have to rerun
-# CMake after adding or removing tests or test fixtures.
+# add_executable(foo foo.cc)
+# target_link_libraries(foo ${GTEST_BOTH_LIBRARIES})
+#
+#
+#
+# ::
+#
+# add_test(AllTestsInFoo foo)
+#
+#
+#
+#
+#
+# If you would like each Google test to show up in CTest as a test you
+# may use the following macro. NOTE: It will slow down your tests by
+# running an executable for each test and test fixture. You will also
+# have to rerun CMake after adding or removing tests or test fixtures.
#
# GTEST_ADD_TESTS(executable extra_args ARGN)
-# executable = The path to the test executable
-# extra_args = Pass a list of extra arguments to be passed to
-# executable enclosed in quotes (or "" for none)
-# ARGN = A list of source files to search for tests & test
-# fixtures.
-#
-# Example:
-# set(FooTestArgs --foo 1 --bar 2)
-# add_executable(FooTest FooUnitTest.cc)
-# GTEST_ADD_TESTS(FooTest "${FooTestArgs}" FooUnitTest.cc)
+#
+# ::
+#
+# executable = The path to the test executable
+# extra_args = Pass a list of extra arguments to be passed to
+# executable enclosed in quotes (or "" for none)
+# ARGN = A list of source files to search for tests & test
+# fixtures.
+#
+#
+#
+# ::
+#
+# Example:
+# set(FooTestArgs --foo 1 --bar 2)
+# add_executable(FooTest FooUnitTest.cc)
+# GTEST_ADD_TESTS(FooTest "${FooTestArgs}" FooUnitTest.cc)
#=============================================================================
# Copyright 2009 Kitware, Inc.
diff --git a/Modules/FindGettext.cmake b/Modules/FindGettext.cmake
index 1a6bd39ddc..6a1e36e2bd 100644
--- a/Modules/FindGettext.cmake
+++ b/Modules/FindGettext.cmake
@@ -1,29 +1,52 @@
-# - Find GNU gettext tools
-# This module looks for the GNU gettext tools. This module defines the
+#.rst:
+# FindGettext
+# -----------
+#
+# Find GNU gettext tools
+#
+# This module looks for the GNU gettext tools. This module defines the
# following values:
-# GETTEXT_MSGMERGE_EXECUTABLE: the full path to the msgmerge tool.
-# GETTEXT_MSGFMT_EXECUTABLE: the full path to the msgfmt tool.
-# GETTEXT_FOUND: True if gettext has been found.
-# GETTEXT_VERSION_STRING: the version of gettext found (since CMake 2.8.8)
+#
+# ::
+#
+# GETTEXT_MSGMERGE_EXECUTABLE: the full path to the msgmerge tool.
+# GETTEXT_MSGFMT_EXECUTABLE: the full path to the msgfmt tool.
+# GETTEXT_FOUND: True if gettext has been found.
+# GETTEXT_VERSION_STRING: the version of gettext found (since CMake 2.8.8)
+#
+#
#
# Additionally it provides the following macros:
-# GETTEXT_CREATE_TRANSLATIONS ( outputFile [ALL] file1 ... fileN )
-# This will create a target "translations" which will convert the
-# given input po files into the binary output mo file. If the
-# ALL option is used, the translations will also be created when
-# building the default target.
-# GETTEXT_PROCESS_POT( <potfile> [ALL] [INSTALL_DESTINATION <destdir>] LANGUAGES <lang1> <lang2> ... )
-# Process the given pot file to mo files.
-# If INSTALL_DESTINATION is given then automatically install rules will be created,
-# the language subdirectory will be taken into account (by default use share/locale/).
-# If ALL is specified, the pot file is processed when building the all traget.
-# It creates a custom target "potfile".
-# GETTEXT_PROCESS_PO_FILES( <lang> [ALL] [INSTALL_DESTINATION <dir>] PO_FILES <po1> <po2> ... )
-# Process the given po files to mo files for the given language.
-# If INSTALL_DESTINATION is given then automatically install rules will be created,
-# the language subdirectory will be taken into account (by default use share/locale/).
-# If ALL is specified, the po files are processed when building the all traget.
-# It creates a custom target "pofiles".
+# GETTEXT_CREATE_TRANSLATIONS ( outputFile [ALL] file1 ... fileN )
+#
+# ::
+#
+# This will create a target "translations" which will convert the
+# given input po files into the binary output mo file. If the
+# ALL option is used, the translations will also be created when
+# building the default target.
+#
+# GETTEXT_PROCESS_POT( <potfile> [ALL] [INSTALL_DESTINATION <destdir>]
+# LANGUAGES <lang1> <lang2> ... )
+#
+# ::
+#
+# Process the given pot file to mo files.
+# If INSTALL_DESTINATION is given then automatically install rules will be created,
+# the language subdirectory will be taken into account (by default use share/locale/).
+# If ALL is specified, the pot file is processed when building the all traget.
+# It creates a custom target "potfile".
+#
+# GETTEXT_PROCESS_PO_FILES( <lang> [ALL] [INSTALL_DESTINATION <dir>]
+# PO_FILES <po1> <po2> ... )
+#
+# ::
+#
+# Process the given po files to mo files for the given language.
+# If INSTALL_DESTINATION is given then automatically install rules will be created,
+# the language subdirectory will be taken into account (by default use share/locale/).
+# If ALL is specified, the po files are processed when building the all traget.
+# It creates a custom target "pofiles".
#=============================================================================
# Copyright 2007-2009 Kitware, Inc.
diff --git a/Modules/FindGit.cmake b/Modules/FindGit.cmake
index 41d2a7a8c3..570538d7d4 100644
--- a/Modules/FindGit.cmake
+++ b/Modules/FindGit.cmake
@@ -1,12 +1,25 @@
+#.rst:
+# FindGit
+# -------
+#
+#
+#
# The module defines the following variables:
-# GIT_EXECUTABLE - path to git command line client
-# GIT_FOUND - true if the command line client was found
-# GIT_VERSION_STRING - the version of git found (since CMake 2.8.8)
+#
+# ::
+#
+# GIT_EXECUTABLE - path to git command line client
+# GIT_FOUND - true if the command line client was found
+# GIT_VERSION_STRING - the version of git found (since CMake 2.8.8)
+#
# Example usage:
-# find_package(Git)
-# if(GIT_FOUND)
-# message("git found: ${GIT_EXECUTABLE}")
-# endif()
+#
+# ::
+#
+# find_package(Git)
+# if(GIT_FOUND)
+# message("git found: ${GIT_EXECUTABLE}")
+# endif()
#=============================================================================
# Copyright 2010 Kitware, Inc.
diff --git a/Modules/FindGnuTLS.cmake b/Modules/FindGnuTLS.cmake
index 7315f1dd44..4d94ffc5d9 100644
--- a/Modules/FindGnuTLS.cmake
+++ b/Modules/FindGnuTLS.cmake
@@ -1,11 +1,19 @@
-# - Try to find the GNU Transport Layer Security library (gnutls)
+#.rst:
+# FindGnuTLS
+# ----------
+#
+# Try to find the GNU Transport Layer Security library (gnutls)
+#
+#
#
# Once done this will define
#
-# GNUTLS_FOUND - System has gnutls
-# GNUTLS_INCLUDE_DIR - The gnutls include directory
-# GNUTLS_LIBRARIES - The libraries needed to use gnutls
-# GNUTLS_DEFINITIONS - Compiler switches required for using gnutls
+# ::
+#
+# GNUTLS_FOUND - System has gnutls
+# GNUTLS_INCLUDE_DIR - The gnutls include directory
+# GNUTLS_LIBRARIES - The libraries needed to use gnutls
+# GNUTLS_DEFINITIONS - Compiler switches required for using gnutls
#=============================================================================
# Copyright 2009 Kitware, Inc.
diff --git a/Modules/FindGnuplot.cmake b/Modules/FindGnuplot.cmake
index f2f9dd0596..067604fc1c 100644
--- a/Modules/FindGnuplot.cmake
+++ b/Modules/FindGnuplot.cmake
@@ -1,10 +1,20 @@
-# - this module looks for gnuplot
+#.rst:
+# FindGnuplot
+# -----------
+#
+# this module looks for gnuplot
+#
+#
#
# Once done this will define
#
-# GNUPLOT_FOUND - system has Gnuplot
-# GNUPLOT_EXECUTABLE - the Gnuplot executable
-# GNUPLOT_VERSION_STRING - the version of Gnuplot found (since CMake 2.8.8)
+# ::
+#
+# GNUPLOT_FOUND - system has Gnuplot
+# GNUPLOT_EXECUTABLE - the Gnuplot executable
+# GNUPLOT_VERSION_STRING - the version of Gnuplot found (since CMake 2.8.8)
+#
+#
#
# GNUPLOT_VERSION_STRING will not work for old versions like 3.7.1.
diff --git a/Modules/FindHDF5.cmake b/Modules/FindHDF5.cmake
index 0c246a1df0..2903bf806e 100644
--- a/Modules/FindHDF5.cmake
+++ b/Modules/FindHDF5.cmake
@@ -1,49 +1,62 @@
-# - Find HDF5, a library for reading and writing self describing array data.
+#.rst:
+# FindHDF5
+# --------
+#
+# Find HDF5, a library for reading and writing self describing array data.
+#
+#
#
# This module invokes the HDF5 wrapper compiler that should be installed
-# alongside HDF5. Depending upon the HDF5 Configuration, the wrapper compiler
-# is called either h5cc or h5pcc. If this succeeds, the module will then call
-# the compiler with the -show argument to see what flags are used when compiling
-# an HDF5 client application.
+# alongside HDF5. Depending upon the HDF5 Configuration, the wrapper
+# compiler is called either h5cc or h5pcc. If this succeeds, the module
+# will then call the compiler with the -show argument to see what flags
+# are used when compiling an HDF5 client application.
#
-# The module will optionally accept the COMPONENTS argument. If no COMPONENTS
-# are specified, then the find module will default to finding only the HDF5 C
-# library. If one or more COMPONENTS are specified, the module will attempt to
-# find the language bindings for the specified components. The only valid
-# components are C, CXX, Fortran, HL, and Fortran_HL. If the COMPONENTS
-# argument is not given, the module will attempt to find only the C bindings.
+# The module will optionally accept the COMPONENTS argument. If no
+# COMPONENTS are specified, then the find module will default to finding
+# only the HDF5 C library. If one or more COMPONENTS are specified, the
+# module will attempt to find the language bindings for the specified
+# components. The only valid components are C, CXX, Fortran, HL, and
+# Fortran_HL. If the COMPONENTS argument is not given, the module will
+# attempt to find only the C bindings.
#
-# On UNIX systems, this module will read the variable HDF5_USE_STATIC_LIBRARIES
-# to determine whether or not to prefer a static link to a dynamic link for HDF5
-# and all of it's dependencies. To use this feature, make sure that the
-# HDF5_USE_STATIC_LIBRARIES variable is set before the call to find_package.
+# On UNIX systems, this module will read the variable
+# HDF5_USE_STATIC_LIBRARIES to determine whether or not to prefer a
+# static link to a dynamic link for HDF5 and all of it's dependencies.
+# To use this feature, make sure that the HDF5_USE_STATIC_LIBRARIES
+# variable is set before the call to find_package.
#
-# To provide the module with a hint about where to find your HDF5 installation,
-# you can set the environment variable HDF5_ROOT. The Find module will then
-# look in this path when searching for HDF5 executables, paths, and libraries.
+# To provide the module with a hint about where to find your HDF5
+# installation, you can set the environment variable HDF5_ROOT. The
+# Find module will then look in this path when searching for HDF5
+# executables, paths, and libraries.
#
-# In addition to finding the includes and libraries required to compile an HDF5
-# client application, this module also makes an effort to find tools that come
-# with the HDF5 distribution that may be useful for regression testing.
+# In addition to finding the includes and libraries required to compile
+# an HDF5 client application, this module also makes an effort to find
+# tools that come with the HDF5 distribution that may be useful for
+# regression testing.
#
# This module will define the following variables:
-# HDF5_INCLUDE_DIRS - Location of the hdf5 includes
-# HDF5_INCLUDE_DIR - Location of the hdf5 includes (deprecated)
-# HDF5_DEFINITIONS - Required compiler definitions for HDF5
-# HDF5_C_LIBRARIES - Required libraries for the HDF5 C bindings.
-# HDF5_CXX_LIBRARIES - Required libraries for the HDF5 C++ bindings
-# HDF5_Fortran_LIBRARIES - Required libraries for the HDF5 Fortran bindings
-# HDF5_HL_LIBRARIES - Required libraries for the HDF5 high level API
-# HDF5_Fortran_HL_LIBRARIES - Required libraries for the high level Fortran
-# bindings.
-# HDF5_LIBRARIES - Required libraries for all requested bindings
-# HDF5_FOUND - true if HDF5 was found on the system
-# HDF5_LIBRARY_DIRS - the full set of library directories
-# HDF5_IS_PARALLEL - Whether or not HDF5 was found with parallel IO support
-# HDF5_C_COMPILER_EXECUTABLE - the path to the HDF5 C wrapper compiler
-# HDF5_CXX_COMPILER_EXECUTABLE - the path to the HDF5 C++ wrapper compiler
-# HDF5_Fortran_COMPILER_EXECUTABLE - the path to the HDF5 Fortran wrapper compiler
-# HDF5_DIFF_EXECUTABLE - the path to the HDF5 dataset comparison tool
+#
+# ::
+#
+# HDF5_INCLUDE_DIRS - Location of the hdf5 includes
+# HDF5_INCLUDE_DIR - Location of the hdf5 includes (deprecated)
+# HDF5_DEFINITIONS - Required compiler definitions for HDF5
+# HDF5_C_LIBRARIES - Required libraries for the HDF5 C bindings.
+# HDF5_CXX_LIBRARIES - Required libraries for the HDF5 C++ bindings
+# HDF5_Fortran_LIBRARIES - Required libraries for the HDF5 Fortran bindings
+# HDF5_HL_LIBRARIES - Required libraries for the HDF5 high level API
+# HDF5_Fortran_HL_LIBRARIES - Required libraries for the high level Fortran
+# bindings.
+# HDF5_LIBRARIES - Required libraries for all requested bindings
+# HDF5_FOUND - true if HDF5 was found on the system
+# HDF5_LIBRARY_DIRS - the full set of library directories
+# HDF5_IS_PARALLEL - Whether or not HDF5 was found with parallel IO support
+# HDF5_C_COMPILER_EXECUTABLE - the path to the HDF5 C wrapper compiler
+# HDF5_CXX_COMPILER_EXECUTABLE - the path to the HDF5 C++ wrapper compiler
+# HDF5_Fortran_COMPILER_EXECUTABLE - the path to the HDF5 Fortran wrapper compiler
+# HDF5_DIFF_EXECUTABLE - the path to the HDF5 dataset comparison tool
#=============================================================================
# Copyright 2009 Kitware, Inc.
diff --git a/Modules/FindHSPELL.cmake b/Modules/FindHSPELL.cmake
index 71e55dad43..2316533534 100644
--- a/Modules/FindHSPELL.cmake
+++ b/Modules/FindHSPELL.cmake
@@ -1,14 +1,25 @@
-# - Try to find Hspell
+#.rst:
+# FindHSPELL
+# ----------
+#
+# Try to find Hspell
+#
# Once done this will define
#
-# HSPELL_FOUND - system has Hspell
-# HSPELL_INCLUDE_DIR - the Hspell include directory
-# HSPELL_LIBRARIES - The libraries needed to use Hspell
-# HSPELL_DEFINITIONS - Compiler switches required for using Hspell
+# ::
+#
+# HSPELL_FOUND - system has Hspell
+# HSPELL_INCLUDE_DIR - the Hspell include directory
+# HSPELL_LIBRARIES - The libraries needed to use Hspell
+# HSPELL_DEFINITIONS - Compiler switches required for using Hspell
+#
+#
+#
+# ::
#
-# HSPELL_VERSION_STRING - The version of Hspell found (x.y)
-# HSPELL_MAJOR_VERSION - the major version of Hspell
-# HSPELL_MINOR_VERSION - The minor version of Hspell
+# HSPELL_VERSION_STRING - The version of Hspell found (x.y)
+# HSPELL_MAJOR_VERSION - the major version of Hspell
+# HSPELL_MINOR_VERSION - The minor version of Hspell
#=============================================================================
# Copyright 2006-2009 Kitware, Inc.
diff --git a/Modules/FindHTMLHelp.cmake b/Modules/FindHTMLHelp.cmake
index c69e9e9487..4e39a34ef8 100644
--- a/Modules/FindHTMLHelp.cmake
+++ b/Modules/FindHTMLHelp.cmake
@@ -1,9 +1,16 @@
-# - This module looks for Microsoft HTML Help Compiler
+#.rst:
+# FindHTMLHelp
+# ------------
+#
+# This module looks for Microsoft HTML Help Compiler
+#
# It defines:
-# HTML_HELP_COMPILER : full path to the Compiler (hhc.exe)
-# HTML_HELP_INCLUDE_PATH : include path to the API (htmlhelp.h)
-# HTML_HELP_LIBRARY : full path to the library (htmlhelp.lib)
#
+# ::
+#
+# HTML_HELP_COMPILER : full path to the Compiler (hhc.exe)
+# HTML_HELP_INCLUDE_PATH : include path to the API (htmlhelp.h)
+# HTML_HELP_LIBRARY : full path to the library (htmlhelp.lib)
#=============================================================================
# Copyright 2002-2009 Kitware, Inc.
diff --git a/Modules/FindHg.cmake b/Modules/FindHg.cmake
index a6a4aef242..a1fb33f3c0 100644
--- a/Modules/FindHg.cmake
+++ b/Modules/FindHg.cmake
@@ -1,12 +1,25 @@
+#.rst:
+# FindHg
+# ------
+#
+#
+#
# The module defines the following variables:
-# HG_EXECUTABLE - path to mercurial command line client (hg)
-# HG_FOUND - true if the command line client was found
-# HG_VERSION_STRING - the version of mercurial found
+#
+# ::
+#
+# HG_EXECUTABLE - path to mercurial command line client (hg)
+# HG_FOUND - true if the command line client was found
+# HG_VERSION_STRING - the version of mercurial found
+#
# Example usage:
-# find_package(Hg)
-# if(HG_FOUND)
-# message("hg found: ${HG_EXECUTABLE}")
-# endif()
+#
+# ::
+#
+# find_package(Hg)
+# if(HG_FOUND)
+# message("hg found: ${HG_EXECUTABLE}")
+# endif()
#=============================================================================
# Copyright 2010-2012 Kitware, Inc.
diff --git a/Modules/FindITK.cmake b/Modules/FindITK.cmake
index 2929a764cc..c9d39eb981 100644
--- a/Modules/FindITK.cmake
+++ b/Modules/FindITK.cmake
@@ -1,4 +1,8 @@
-# - Find an ITK installation or build tree.
+#.rst:
+# FindITK
+# -------
+#
+# Find an ITK installation or build tree.
# When ITK is found, the ITKConfig.cmake file is sourced to setup the
# location and configuration of ITK. Please read this file, or
diff --git a/Modules/FindIcotool.cmake b/Modules/FindIcotool.cmake
index 8c101778de..e29fe2e5a9 100644
--- a/Modules/FindIcotool.cmake
+++ b/Modules/FindIcotool.cmake
@@ -1,10 +1,17 @@
-# - Find icotool
-# This module looks for icotool. This module defines the
-# following values:
-# ICOTOOL_EXECUTABLE: the full path to the icotool tool.
-# ICOTOOL_FOUND: True if icotool has been found.
-# ICOTOOL_VERSION_STRING: the version of icotool found.
+#.rst:
+# FindIcotool
+# -----------
#
+# Find icotool
+#
+# This module looks for icotool. This module defines the following
+# values:
+#
+# ::
+#
+# ICOTOOL_EXECUTABLE: the full path to the icotool tool.
+# ICOTOOL_FOUND: True if icotool has been found.
+# ICOTOOL_VERSION_STRING: the version of icotool found.
#=============================================================================
# Copyright 2012 Aleksey Avdeev <solo@altlinux.ru>
diff --git a/Modules/FindImageMagick.cmake b/Modules/FindImageMagick.cmake
index 7c6cce7866..1e7bda51e9 100644
--- a/Modules/FindImageMagick.cmake
+++ b/Modules/FindImageMagick.cmake
@@ -1,58 +1,84 @@
-# - Find the ImageMagick binary suite.
-# This module will search for a set of ImageMagick tools specified
-# as components in the FIND_PACKAGE call. Typical components include,
-# but are not limited to (future versions of ImageMagick might have
+#.rst:
+# FindImageMagick
+# ---------------
+#
+# Find the ImageMagick binary suite.
+#
+# This module will search for a set of ImageMagick tools specified as
+# components in the FIND_PACKAGE call. Typical components include, but
+# are not limited to (future versions of ImageMagick might have
# additional components not listed here):
#
-# animate
-# compare
-# composite
-# conjure
-# convert
-# display
-# identify
-# import
-# mogrify
-# montage
-# stream
+# ::
+#
+# animate
+# compare
+# composite
+# conjure
+# convert
+# display
+# identify
+# import
+# mogrify
+# montage
+# stream
+#
+#
#
# If no component is specified in the FIND_PACKAGE call, then it only
-# searches for the ImageMagick executable directory. This code defines
+# searches for the ImageMagick executable directory. This code defines
# the following variables:
#
-# ImageMagick_FOUND - TRUE if all components are found.
-# ImageMagick_EXECUTABLE_DIR - Full path to executables directory.
-# ImageMagick_<component>_FOUND - TRUE if <component> is found.
-# ImageMagick_<component>_EXECUTABLE - Full path to <component> executable.
-# ImageMagick_VERSION_STRING - the version of ImageMagick found
-# (since CMake 2.8.8)
+# ::
+#
+# ImageMagick_FOUND - TRUE if all components are found.
+# ImageMagick_EXECUTABLE_DIR - Full path to executables directory.
+# ImageMagick_<component>_FOUND - TRUE if <component> is found.
+# ImageMagick_<component>_EXECUTABLE - Full path to <component> executable.
+# ImageMagick_VERSION_STRING - the version of ImageMagick found
+# (since CMake 2.8.8)
+#
+#
#
# ImageMagick_VERSION_STRING will not work for old versions like 5.2.3.
#
# There are also components for the following ImageMagick APIs:
#
-# Magick++
-# MagickWand
-# MagickCore
+# ::
+#
+# Magick++
+# MagickWand
+# MagickCore
+#
+#
#
# For these components the following variables are set:
#
-# ImageMagick_FOUND - TRUE if all components are found.
-# ImageMagick_INCLUDE_DIRS - Full paths to all include dirs.
-# ImageMagick_LIBRARIES - Full paths to all libraries.
-# ImageMagick_<component>_FOUND - TRUE if <component> is found.
-# ImageMagick_<component>_INCLUDE_DIRS - Full path to <component> include dirs.
-# ImageMagick_<component>_LIBRARIES - Full path to <component> libraries.
+# ::
+#
+# ImageMagick_FOUND - TRUE if all components are found.
+# ImageMagick_INCLUDE_DIRS - Full paths to all include dirs.
+# ImageMagick_LIBRARIES - Full paths to all libraries.
+# ImageMagick_<component>_FOUND - TRUE if <component> is found.
+# ImageMagick_<component>_INCLUDE_DIRS - Full path to <component> include dirs.
+# ImageMagick_<component>_LIBRARIES - Full path to <component> libraries.
+#
+#
#
# Example Usages:
-# find_package(ImageMagick)
-# find_package(ImageMagick COMPONENTS convert)
-# find_package(ImageMagick COMPONENTS convert mogrify display)
-# find_package(ImageMagick COMPONENTS Magick++)
-# find_package(ImageMagick COMPONENTS Magick++ convert)
-#
-# Note that the standard FIND_PACKAGE features are supported
-# (i.e., QUIET, REQUIRED, etc.).
+#
+# ::
+#
+# find_package(ImageMagick)
+# find_package(ImageMagick COMPONENTS convert)
+# find_package(ImageMagick COMPONENTS convert mogrify display)
+# find_package(ImageMagick COMPONENTS Magick++)
+# find_package(ImageMagick COMPONENTS Magick++ convert)
+#
+#
+#
+# Note that the standard FIND_PACKAGE features are supported (i.e.,
+# QUIET, REQUIRED, etc.).
#=============================================================================
# Copyright 2007-2009 Kitware, Inc.
diff --git a/Modules/FindJNI.cmake b/Modules/FindJNI.cmake
index 9d708ca157..1780a8efca 100644
--- a/Modules/FindJNI.cmake
+++ b/Modules/FindJNI.cmake
@@ -1,17 +1,23 @@
-# - Find JNI java libraries.
+#.rst:
+# FindJNI
+# -------
+#
+# Find JNI java libraries.
+#
# This module finds if Java is installed and determines where the
-# include files and libraries are. It also determines what the name of
-# the library is. This code sets the following variables:
+# include files and libraries are. It also determines what the name of
+# the library is. This code sets the following variables:
#
-# JNI_INCLUDE_DIRS = the include dirs to use
-# JNI_LIBRARIES = the libraries to use
-# JNI_FOUND = TRUE if JNI headers and libraries were found.
-# JAVA_AWT_LIBRARY = the path to the jawt library
-# JAVA_JVM_LIBRARY = the path to the jvm library
-# JAVA_INCLUDE_PATH = the include path to jni.h
-# JAVA_INCLUDE_PATH2 = the include path to jni_md.h
-# JAVA_AWT_INCLUDE_PATH = the include path to jawt.h
+# ::
#
+# JNI_INCLUDE_DIRS = the include dirs to use
+# JNI_LIBRARIES = the libraries to use
+# JNI_FOUND = TRUE if JNI headers and libraries were found.
+# JAVA_AWT_LIBRARY = the path to the jawt library
+# JAVA_JVM_LIBRARY = the path to the jvm library
+# JAVA_INCLUDE_PATH = the include path to jni.h
+# JAVA_INCLUDE_PATH2 = the include path to jni_md.h
+# JAVA_AWT_INCLUDE_PATH = the include path to jawt.h
#=============================================================================
# Copyright 2001-2009 Kitware, Inc.
diff --git a/Modules/FindJPEG.cmake b/Modules/FindJPEG.cmake
index 7c1f0fd947..90e44852e6 100644
--- a/Modules/FindJPEG.cmake
+++ b/Modules/FindJPEG.cmake
@@ -1,11 +1,22 @@
-# - Find JPEG
-# Find the native JPEG includes and library
-# This module defines
-# JPEG_INCLUDE_DIR, where to find jpeglib.h, etc.
-# JPEG_LIBRARIES, the libraries needed to use JPEG.
-# JPEG_FOUND, If false, do not try to use JPEG.
+#.rst:
+# FindJPEG
+# --------
+#
+# Find JPEG
+#
+# Find the native JPEG includes and library This module defines
+#
+# ::
+#
+# JPEG_INCLUDE_DIR, where to find jpeglib.h, etc.
+# JPEG_LIBRARIES, the libraries needed to use JPEG.
+# JPEG_FOUND, If false, do not try to use JPEG.
+#
# also defined, but not for general use are
-# JPEG_LIBRARY, where to find the JPEG library.
+#
+# ::
+#
+# JPEG_LIBRARY, where to find the JPEG library.
#=============================================================================
# Copyright 2001-2009 Kitware, Inc.
diff --git a/Modules/FindJasper.cmake b/Modules/FindJasper.cmake
index 136056b84d..0f325f0391 100644
--- a/Modules/FindJasper.cmake
+++ b/Modules/FindJasper.cmake
@@ -1,10 +1,17 @@
-# - Try to find the Jasper JPEG2000 library
+#.rst:
+# FindJasper
+# ----------
+#
+# Try to find the Jasper JPEG2000 library
+#
# Once done this will define
#
-# JASPER_FOUND - system has Jasper
-# JASPER_INCLUDE_DIR - the Jasper include directory
-# JASPER_LIBRARIES - the libraries needed to use Jasper
-# JASPER_VERSION_STRING - the version of Jasper found (since CMake 2.8.8)
+# ::
+#
+# JASPER_FOUND - system has Jasper
+# JASPER_INCLUDE_DIR - the Jasper include directory
+# JASPER_LIBRARIES - the libraries needed to use Jasper
+# JASPER_VERSION_STRING - the version of Jasper found (since CMake 2.8.8)
#=============================================================================
# Copyright 2006-2009 Kitware, Inc.
diff --git a/Modules/FindJava.cmake b/Modules/FindJava.cmake
index 2f02b7a4b1..2d1a976586 100644
--- a/Modules/FindJava.cmake
+++ b/Modules/FindJava.cmake
@@ -1,46 +1,57 @@
-# - Find Java
+#.rst:
+# FindJava
+# --------
+#
+# Find Java
+#
# This module finds if Java is installed and determines where the
-# include files and libraries are. This code sets the following
+# include files and libraries are. This code sets the following
# variables:
#
-# Java_JAVA_EXECUTABLE = the full path to the Java runtime
-# Java_JAVAC_EXECUTABLE = the full path to the Java compiler
-# Java_JAVAH_EXECUTABLE = the full path to the Java header generator
-# Java_JAVADOC_EXECUTABLE = the full path to the Java documention generator
-# Java_JAR_EXECUTABLE = the full path to the Java archiver
-# Java_VERSION_STRING = Version of the package found (java version), eg. 1.6.0_12
-# Java_VERSION_MAJOR = The major version of the package found.
-# Java_VERSION_MINOR = The minor version of the package found.
-# Java_VERSION_PATCH = The patch version of the package found.
-# Java_VERSION_TWEAK = The tweak version of the package found (after '_')
-# Java_VERSION = This is set to: $major.$minor.$patch(.$tweak)
+# ::
+#
+# Java_JAVA_EXECUTABLE = the full path to the Java runtime
+# Java_JAVAC_EXECUTABLE = the full path to the Java compiler
+# Java_JAVAH_EXECUTABLE = the full path to the Java header generator
+# Java_JAVADOC_EXECUTABLE = the full path to the Java documention generator
+# Java_JAR_EXECUTABLE = the full path to the Java archiver
+# Java_VERSION_STRING = Version of the package found (java version), eg. 1.6.0_12
+# Java_VERSION_MAJOR = The major version of the package found.
+# Java_VERSION_MINOR = The minor version of the package found.
+# Java_VERSION_PATCH = The patch version of the package found.
+# Java_VERSION_TWEAK = The tweak version of the package found (after '_')
+# Java_VERSION = This is set to: $major.$minor.$patch(.$tweak)
+#
+#
#
# The minimum required version of Java can be specified using the
-# standard CMake syntax, e.g. find_package(Java 1.5)
+# standard CMake syntax, e.g. find_package(Java 1.5)
#
-# NOTE: ${Java_VERSION} and ${Java_VERSION_STRING} are not guaranteed to be
-# identical. For example some java version may return:
-# Java_VERSION_STRING = 1.5.0_17
-# and
-# Java_VERSION = 1.5.0.17
+# NOTE: ${Java_VERSION} and ${Java_VERSION_STRING} are not guaranteed to
+# be identical. For example some java version may return:
+# Java_VERSION_STRING = 1.5.0_17 and Java_VERSION = 1.5.0.17
#
-# another example is the Java OEM, with:
-# Java_VERSION_STRING = 1.6.0-oem
-# and
-# Java_VERSION = 1.6.0
+# another example is the Java OEM, with: Java_VERSION_STRING = 1.6.0-oem
+# and Java_VERSION = 1.6.0
#
# For these components the following variables are set:
#
-# Java_FOUND - TRUE if all components are found.
-# Java_INCLUDE_DIRS - Full paths to all include dirs.
-# Java_LIBRARIES - Full paths to all libraries.
-# Java_<component>_FOUND - TRUE if <component> is found.
+# ::
+#
+# Java_FOUND - TRUE if all components are found.
+# Java_INCLUDE_DIRS - Full paths to all include dirs.
+# Java_LIBRARIES - Full paths to all libraries.
+# Java_<component>_FOUND - TRUE if <component> is found.
+#
+#
#
# Example Usages:
-# find_package(Java)
-# find_package(Java COMPONENTS Runtime)
-# find_package(Java COMPONENTS Development)
#
+# ::
+#
+# find_package(Java)
+# find_package(Java COMPONENTS Runtime)
+# find_package(Java COMPONENTS Development)
#=============================================================================
# Copyright 2002-2009 Kitware, Inc.
diff --git a/Modules/FindKDE3.cmake b/Modules/FindKDE3.cmake
index 70eccef60a..159e29c79b 100644
--- a/Modules/FindKDE3.cmake
+++ b/Modules/FindKDE3.cmake
@@ -1,64 +1,132 @@
-# - Find the KDE3 include and library dirs, KDE preprocessors and define a some macros
+#.rst:
+# FindKDE3
+# --------
+#
+# Find the KDE3 include and library dirs, KDE preprocessors and define a some macros
+#
+#
#
# This module defines the following variables:
-# KDE3_DEFINITIONS - compiler definitions required for compiling KDE software
-# KDE3_INCLUDE_DIR - the KDE include directory
-# KDE3_INCLUDE_DIRS - the KDE and the Qt include directory, for use with include_directories()
-# KDE3_LIB_DIR - the directory where the KDE libraries are installed, for use with link_directories()
-# QT_AND_KDECORE_LIBS - this contains both the Qt and the kdecore library
-# KDE3_DCOPIDL_EXECUTABLE - the dcopidl executable
-# KDE3_DCOPIDL2CPP_EXECUTABLE - the dcopidl2cpp executable
-# KDE3_KCFGC_EXECUTABLE - the kconfig_compiler executable
-# KDE3_FOUND - set to TRUE if all of the above has been found
+#
+# ::
+#
+# KDE3_DEFINITIONS - compiler definitions required for compiling KDE software
+# KDE3_INCLUDE_DIR - the KDE include directory
+# KDE3_INCLUDE_DIRS - the KDE and the Qt include directory, for use with include_directories()
+# KDE3_LIB_DIR - the directory where the KDE libraries are installed, for use with link_directories()
+# QT_AND_KDECORE_LIBS - this contains both the Qt and the kdecore library
+# KDE3_DCOPIDL_EXECUTABLE - the dcopidl executable
+# KDE3_DCOPIDL2CPP_EXECUTABLE - the dcopidl2cpp executable
+# KDE3_KCFGC_EXECUTABLE - the kconfig_compiler executable
+# KDE3_FOUND - set to TRUE if all of the above has been found
+#
+#
#
# The following user adjustable options are provided:
#
-# KDE3_BUILD_TESTS - enable this to build KDE testcases
+# ::
+#
+# KDE3_BUILD_TESTS - enable this to build KDE testcases
+#
+#
+#
+#
+#
+# It also adds the following macros (from KDE3Macros.cmake) SRCS_VAR is
+# always the variable which contains the list of source files for your
+# application or library.
+#
+# KDE3_AUTOMOC(file1 ... fileN)
+#
+# ::
+#
+# Call this if you want to have automatic moc file handling.
+# This means if you include "foo.moc" in the source file foo.cpp
+# a moc file for the header foo.h will be created automatically.
+# You can set the property SKIP_AUTOMAKE using set_source_files_properties()
+# to exclude some files in the list from being processed.
+#
+#
+#
+# KDE3_ADD_MOC_FILES(SRCS_VAR file1 ... fileN )
+#
+# ::
+#
+# If you don't use the KDE3_AUTOMOC() macro, for the files
+# listed here moc files will be created (named "foo.moc.cpp")
+#
+#
+#
+# KDE3_ADD_DCOP_SKELS(SRCS_VAR header1.h ... headerN.h )
+#
+# ::
+#
+# Use this to generate DCOP skeletions from the listed headers.
#
#
-# It also adds the following macros (from KDE3Macros.cmake)
-# SRCS_VAR is always the variable which contains the list of source files for your application or library.
#
-# KDE3_AUTOMOC(file1 ... fileN)
-# Call this if you want to have automatic moc file handling.
-# This means if you include "foo.moc" in the source file foo.cpp
-# a moc file for the header foo.h will be created automatically.
-# You can set the property SKIP_AUTOMAKE using set_source_files_properties()
-# to exclude some files in the list from being processed.
+# KDE3_ADD_DCOP_STUBS(SRCS_VAR header1.h ... headerN.h )
#
-# KDE3_ADD_MOC_FILES(SRCS_VAR file1 ... fileN )
-# If you don't use the KDE3_AUTOMOC() macro, for the files
-# listed here moc files will be created (named "foo.moc.cpp")
+# ::
#
-# KDE3_ADD_DCOP_SKELS(SRCS_VAR header1.h ... headerN.h )
-# Use this to generate DCOP skeletions from the listed headers.
+# Use this to generate DCOP stubs from the listed headers.
#
-# KDE3_ADD_DCOP_STUBS(SRCS_VAR header1.h ... headerN.h )
-# Use this to generate DCOP stubs from the listed headers.
#
-# KDE3_ADD_UI_FILES(SRCS_VAR file1.ui ... fileN.ui )
-# Use this to add the Qt designer ui files to your application/library.
#
-# KDE3_ADD_KCFG_FILES(SRCS_VAR file1.kcfgc ... fileN.kcfgc )
-# Use this to add KDE kconfig compiler files to your application/library.
+# KDE3_ADD_UI_FILES(SRCS_VAR file1.ui ... fileN.ui )
+#
+# ::
+#
+# Use this to add the Qt designer ui files to your application/library.
+#
+#
+#
+# KDE3_ADD_KCFG_FILES(SRCS_VAR file1.kcfgc ... fileN.kcfgc )
+#
+# ::
+#
+# Use this to add KDE kconfig compiler files to your application/library.
+#
+#
#
# KDE3_INSTALL_LIBTOOL_FILE(target)
-# This will create and install a simple libtool file for the given target.
#
-# KDE3_ADD_EXECUTABLE(name file1 ... fileN )
-# Currently identical to add_executable(), may provide some advanced features in the future.
+# ::
+#
+# This will create and install a simple libtool file for the given target.
+#
+#
+#
+# KDE3_ADD_EXECUTABLE(name file1 ... fileN )
+#
+# ::
+#
+# Currently identical to add_executable(), may provide some advanced features in the future.
+#
+#
+#
+# KDE3_ADD_KPART(name [WITH_PREFIX] file1 ... fileN )
+#
+# ::
+#
+# Create a KDE plugin (KPart, kioslave, etc.) from the given source files.
+# If WITH_PREFIX is given, the resulting plugin will have the prefix "lib", otherwise it won't.
+# It creates and installs an appropriate libtool la-file.
+#
+#
+#
+# KDE3_ADD_KDEINIT_EXECUTABLE(name file1 ... fileN )
+#
+# ::
+#
+# Create a KDE application in the form of a module loadable via kdeinit.
+# A library named kdeinit_<name> will be created and a small executable which links to it.
+#
#
-# KDE3_ADD_KPART(name [WITH_PREFIX] file1 ... fileN )
-# Create a KDE plugin (KPart, kioslave, etc.) from the given source files.
-# If WITH_PREFIX is given, the resulting plugin will have the prefix "lib", otherwise it won't.
-# It creates and installs an appropriate libtool la-file.
#
-# KDE3_ADD_KDEINIT_EXECUTABLE(name file1 ... fileN )
-# Create a KDE application in the form of a module loadable via kdeinit.
-# A library named kdeinit_<name> will be created and a small executable which links to it.
+# The option KDE3_ENABLE_FINAL to enable all-in-one compilation is no
+# longer supported.
#
-# The option KDE3_ENABLE_FINAL to enable all-in-one compilation is
-# no longer supported.
#
#
# Author: Alexander Neundorf <neundorf@kde.org>
diff --git a/Modules/FindKDE4.cmake b/Modules/FindKDE4.cmake
index c653a04cd5..3c2c309873 100644
--- a/Modules/FindKDE4.cmake
+++ b/Modules/FindKDE4.cmake
@@ -1,11 +1,24 @@
-# Find KDE4 and provide all necessary variables and macros to compile software for it.
-# It looks for KDE 4 in the following directories in the given order:
-# CMAKE_INSTALL_PREFIX
-# KDEDIRS
-# /opt/kde4
+#.rst:
+# FindKDE4
+# --------
#
-# Please look in FindKDE4Internal.cmake and KDE4Macros.cmake for more information.
-# They are installed with the KDE 4 libraries in $KDEDIRS/share/apps/cmake/modules/.
+#
+#
+# Find KDE4 and provide all necessary variables and macros to compile
+# software for it. It looks for KDE 4 in the following directories in
+# the given order:
+#
+# ::
+#
+# CMAKE_INSTALL_PREFIX
+# KDEDIRS
+# /opt/kde4
+#
+#
+#
+# Please look in FindKDE4Internal.cmake and KDE4Macros.cmake for more
+# information. They are installed with the KDE 4 libraries in
+# $KDEDIRS/share/apps/cmake/modules/.
#
# Author: Alexander Neundorf <neundorf@kde.org>
diff --git a/Modules/FindLAPACK.cmake b/Modules/FindLAPACK.cmake
index fecadebd14..69da4cd9cd 100644
--- a/Modules/FindLAPACK.cmake
+++ b/Modules/FindLAPACK.cmake
@@ -1,27 +1,37 @@
-# - Find LAPACK library
-# This module finds an installed fortran library that implements the LAPACK
-# linear-algebra interface (see http://www.netlib.org/lapack/).
+#.rst:
+# FindLAPACK
+# ----------
#
-# The approach follows that taken for the autoconf macro file, acx_lapack.m4
-# (distributed at http://ac-archive.sourceforge.net/ac-archive/acx_lapack.html).
+# Find LAPACK library
+#
+# This module finds an installed fortran library that implements the
+# LAPACK linear-algebra interface (see http://www.netlib.org/lapack/).
+#
+# The approach follows that taken for the autoconf macro file,
+# acx_lapack.m4 (distributed at
+# http://ac-archive.sourceforge.net/ac-archive/acx_lapack.html).
#
# This module sets the following variables:
-# LAPACK_FOUND - set to true if a library implementing the LAPACK interface
-# is found
-# LAPACK_LINKER_FLAGS - uncached list of required linker flags (excluding -l
-# and -L).
-# LAPACK_LIBRARIES - uncached list of libraries (using full path name) to
-# link against to use LAPACK
-# LAPACK95_LIBRARIES - uncached list of libraries (using full path name) to
-# link against to use LAPACK95
-# LAPACK95_FOUND - set to true if a library implementing the LAPACK f95
-# interface is found
-# BLA_STATIC if set on this determines what kind of linkage we do (static)
-# BLA_VENDOR if set checks only the specified vendor, if not set checks
-# all the possibilities
-# BLA_F95 if set on tries to find the f95 interfaces for BLAS/LAPACK
-### List of vendors (BLA_VENDOR) valid in this module
-## Intel(mkl), ACML,Apple, NAS, Generic
+#
+# ::
+#
+# LAPACK_FOUND - set to true if a library implementing the LAPACK interface
+# is found
+# LAPACK_LINKER_FLAGS - uncached list of required linker flags (excluding -l
+# and -L).
+# LAPACK_LIBRARIES - uncached list of libraries (using full path name) to
+# link against to use LAPACK
+# LAPACK95_LIBRARIES - uncached list of libraries (using full path name) to
+# link against to use LAPACK95
+# LAPACK95_FOUND - set to true if a library implementing the LAPACK f95
+# interface is found
+# BLA_STATIC if set on this determines what kind of linkage we do (static)
+# BLA_VENDOR if set checks only the specified vendor, if not set checks
+# all the possibilities
+# BLA_F95 if set on tries to find the f95 interfaces for BLAS/LAPACK
+#
+# ## List of vendors (BLA_VENDOR) valid in this module # Intel(mkl),
+# ACML,Apple, NAS, Generic
#=============================================================================
# Copyright 2007-2009 Kitware, Inc.
diff --git a/Modules/FindLATEX.cmake b/Modules/FindLATEX.cmake
index bc752a95a7..e78d5bf544 100644
--- a/Modules/FindLATEX.cmake
+++ b/Modules/FindLATEX.cmake
@@ -1,15 +1,21 @@
-# - Find Latex
+#.rst:
+# FindLATEX
+# ---------
+#
+# Find Latex
+#
# This module finds if Latex is installed and determines where the
-# executables are. This code sets the following variables:
+# executables are. This code sets the following variables:
#
-# LATEX_COMPILER: path to the LaTeX compiler
-# PDFLATEX_COMPILER: path to the PdfLaTeX compiler
-# BIBTEX_COMPILER: path to the BibTeX compiler
-# MAKEINDEX_COMPILER: path to the MakeIndex compiler
-# DVIPS_CONVERTER: path to the DVIPS converter
-# PS2PDF_CONVERTER: path to the PS2PDF converter
-# LATEX2HTML_CONVERTER: path to the LaTeX2Html converter
+# ::
#
+# LATEX_COMPILER: path to the LaTeX compiler
+# PDFLATEX_COMPILER: path to the PdfLaTeX compiler
+# BIBTEX_COMPILER: path to the BibTeX compiler
+# MAKEINDEX_COMPILER: path to the MakeIndex compiler
+# DVIPS_CONVERTER: path to the DVIPS converter
+# PS2PDF_CONVERTER: path to the PS2PDF converter
+# LATEX2HTML_CONVERTER: path to the LaTeX2Html converter
#=============================================================================
# Copyright 2002-2009 Kitware, Inc.
diff --git a/Modules/FindLibArchive.cmake b/Modules/FindLibArchive.cmake
index be931c525c..471a4f1886 100644
--- a/Modules/FindLibArchive.cmake
+++ b/Modules/FindLibArchive.cmake
@@ -1,10 +1,17 @@
-# - Find libarchive library and headers
+#.rst:
+# FindLibArchive
+# --------------
+#
+# Find libarchive library and headers
+#
# The module defines the following variables:
#
-# LibArchive_FOUND - true if libarchive was found
-# LibArchive_INCLUDE_DIRS - include search path
-# LibArchive_LIBRARIES - libraries to link
-# LibArchive_VERSION - libarchive 3-component version number
+# ::
+#
+# LibArchive_FOUND - true if libarchive was found
+# LibArchive_INCLUDE_DIRS - include search path
+# LibArchive_LIBRARIES - libraries to link
+# LibArchive_VERSION - libarchive 3-component version number
#=============================================================================
# Copyright 2010 Kitware, Inc.
diff --git a/Modules/FindLibLZMA.cmake b/Modules/FindLibLZMA.cmake
index 837e63324b..be01594b4d 100644
--- a/Modules/FindLibLZMA.cmake
+++ b/Modules/FindLibLZMA.cmake
@@ -1,16 +1,23 @@
-# - Find LibLZMA
+#.rst:
+# FindLibLZMA
+# -----------
+#
+# Find LibLZMA
+#
# Find LibLZMA headers and library
#
-# LIBLZMA_FOUND - True if liblzma is found.
-# LIBLZMA_INCLUDE_DIRS - Directory where liblzma headers are located.
-# LIBLZMA_LIBRARIES - Lzma libraries to link against.
-# LIBLZMA_HAS_AUTO_DECODER - True if lzma_auto_decoder() is found (required).
-# LIBLZMA_HAS_EASY_ENCODER - True if lzma_easy_encoder() is found (required).
-# LIBLZMA_HAS_LZMA_PRESET - True if lzma_lzma_preset() is found (required).
-# LIBLZMA_VERSION_MAJOR - The major version of lzma
-# LIBLZMA_VERSION_MINOR - The minor version of lzma
-# LIBLZMA_VERSION_PATCH - The patch version of lzma
-# LIBLZMA_VERSION_STRING - version number as a string (ex: "5.0.3")
+# ::
+#
+# LIBLZMA_FOUND - True if liblzma is found.
+# LIBLZMA_INCLUDE_DIRS - Directory where liblzma headers are located.
+# LIBLZMA_LIBRARIES - Lzma libraries to link against.
+# LIBLZMA_HAS_AUTO_DECODER - True if lzma_auto_decoder() is found (required).
+# LIBLZMA_HAS_EASY_ENCODER - True if lzma_easy_encoder() is found (required).
+# LIBLZMA_HAS_LZMA_PRESET - True if lzma_lzma_preset() is found (required).
+# LIBLZMA_VERSION_MAJOR - The major version of lzma
+# LIBLZMA_VERSION_MINOR - The minor version of lzma
+# LIBLZMA_VERSION_PATCH - The patch version of lzma
+# LIBLZMA_VERSION_STRING - version number as a string (ex: "5.0.3")
#=============================================================================
# Copyright 2008 Per Øyvind Karlsen <peroyvind@mandriva.org>
diff --git a/Modules/FindLibXml2.cmake b/Modules/FindLibXml2.cmake
index 858496e09a..73224286d9 100644
--- a/Modules/FindLibXml2.cmake
+++ b/Modules/FindLibXml2.cmake
@@ -1,12 +1,19 @@
-# - Try to find the LibXml2 xml processing library
+#.rst:
+# FindLibXml2
+# -----------
+#
+# Try to find the LibXml2 xml processing library
+#
# Once done this will define
#
-# LIBXML2_FOUND - System has LibXml2
-# LIBXML2_INCLUDE_DIR - The LibXml2 include directory
-# LIBXML2_LIBRARIES - The libraries needed to use LibXml2
-# LIBXML2_DEFINITIONS - Compiler switches required for using LibXml2
-# LIBXML2_XMLLINT_EXECUTABLE - The XML checking tool xmllint coming with LibXml2
-# LIBXML2_VERSION_STRING - the version of LibXml2 found (since CMake 2.8.8)
+# ::
+#
+# LIBXML2_FOUND - System has LibXml2
+# LIBXML2_INCLUDE_DIR - The LibXml2 include directory
+# LIBXML2_LIBRARIES - The libraries needed to use LibXml2
+# LIBXML2_DEFINITIONS - Compiler switches required for using LibXml2
+# LIBXML2_XMLLINT_EXECUTABLE - The XML checking tool xmllint coming with LibXml2
+# LIBXML2_VERSION_STRING - the version of LibXml2 found (since CMake 2.8.8)
#=============================================================================
# Copyright 2006-2009 Kitware, Inc.
diff --git a/Modules/FindLibXslt.cmake b/Modules/FindLibXslt.cmake
index 7d142f4309..bf2f821309 100644
--- a/Modules/FindLibXslt.cmake
+++ b/Modules/FindLibXslt.cmake
@@ -1,14 +1,26 @@
-# - Try to find the LibXslt library
+#.rst:
+# FindLibXslt
+# -----------
+#
+# Try to find the LibXslt library
+#
# Once done this will define
#
-# LIBXSLT_FOUND - system has LibXslt
-# LIBXSLT_INCLUDE_DIR - the LibXslt include directory
-# LIBXSLT_LIBRARIES - Link these to LibXslt
-# LIBXSLT_DEFINITIONS - Compiler switches required for using LibXslt
-# LIBXSLT_VERSION_STRING - version of LibXslt found (since CMake 2.8.8)
-# Additionally, the following two variables are set (but not required for using xslt):
-# LIBXSLT_EXSLT_LIBRARIES - Link to these if you need to link against the exslt library
-# LIBXSLT_XSLTPROC_EXECUTABLE - Contains the full path to the xsltproc executable if found
+# ::
+#
+# LIBXSLT_FOUND - system has LibXslt
+# LIBXSLT_INCLUDE_DIR - the LibXslt include directory
+# LIBXSLT_LIBRARIES - Link these to LibXslt
+# LIBXSLT_DEFINITIONS - Compiler switches required for using LibXslt
+# LIBXSLT_VERSION_STRING - version of LibXslt found (since CMake 2.8.8)
+#
+# Additionally, the following two variables are set (but not required
+# for using xslt):
+#
+# ::
+#
+# LIBXSLT_EXSLT_LIBRARIES - Link to these if you need to link against the exslt library
+# LIBXSLT_XSLTPROC_EXECUTABLE - Contains the full path to the xsltproc executable if found
#=============================================================================
# Copyright 2006-2009 Kitware, Inc.
diff --git a/Modules/FindLua.cmake b/Modules/FindLua.cmake
index 31fe54c46f..cc35e54394 100644
--- a/Modules/FindLua.cmake
+++ b/Modules/FindLua.cmake
@@ -1,19 +1,37 @@
-# Locate Lua library
-# This module defines
-# LUA_FOUND - if false, do not try to link to Lua
-# LUA_LIBRARIES - both lua and lualib
-# LUA_INCLUDE_DIR - where to find lua.h
-# LUA_VERSION_STRING - the version of Lua found
-# LUA_VERSION_MAJOR - the major version of Lua
-# LUA_VERSION_MINOR - the minor version of Lua
-# LUA_VERSION_PATCH - the patch version of Lua
+#.rst:
+# FindLua
+# -------
+#
+#
+#
+# Locate Lua library This module defines
+#
+# ::
+#
+# LUA_FOUND - if false, do not try to link to Lua
+# LUA_LIBRARIES - both lua and lualib
+# LUA_INCLUDE_DIR - where to find lua.h
+# LUA_VERSION_STRING - the version of Lua found
+# LUA_VERSION_MAJOR - the major version of Lua
+# LUA_VERSION_MINOR - the minor version of Lua
+# LUA_VERSION_PATCH - the patch version of Lua
+#
+#
#
# Note that the expected include convention is
-# #include "lua.h"
+#
+# ::
+#
+# #include "lua.h"
+#
# and not
-# #include <lua/lua.h>
-# This is because, the lua location is not standardized and may exist
-# in locations other than lua/
+#
+# ::
+#
+# #include <lua/lua.h>
+#
+# This is because, the lua location is not standardized and may exist in
+# locations other than lua/
#=============================================================================
# Copyright 2007-2009 Kitware, Inc.
diff --git a/Modules/FindLua50.cmake b/Modules/FindLua50.cmake
index 0276a98f4c..666d90960a 100644
--- a/Modules/FindLua50.cmake
+++ b/Modules/FindLua50.cmake
@@ -1,15 +1,33 @@
-# Locate Lua library
-# This module defines
-# LUA50_FOUND, if false, do not try to link to Lua
-# LUA_LIBRARIES, both lua and lualib
-# LUA_INCLUDE_DIR, where to find lua.h and lualib.h (and probably lauxlib.h)
+#.rst:
+# FindLua50
+# ---------
+#
+#
+#
+# Locate Lua library This module defines
+#
+# ::
+#
+# LUA50_FOUND, if false, do not try to link to Lua
+# LUA_LIBRARIES, both lua and lualib
+# LUA_INCLUDE_DIR, where to find lua.h and lualib.h (and probably lauxlib.h)
+#
+#
#
# Note that the expected include convention is
-# #include "lua.h"
+#
+# ::
+#
+# #include "lua.h"
+#
# and not
-# #include <lua/lua.h>
-# This is because, the lua location is not standardized and may exist
-# in locations other than lua/
+#
+# ::
+#
+# #include <lua/lua.h>
+#
+# This is because, the lua location is not standardized and may exist in
+# locations other than lua/
#=============================================================================
# Copyright 2007-2009 Kitware, Inc.
diff --git a/Modules/FindLua51.cmake b/Modules/FindLua51.cmake
index 770e93a1a7..5b9ff91a75 100644
--- a/Modules/FindLua51.cmake
+++ b/Modules/FindLua51.cmake
@@ -1,16 +1,34 @@
-# Locate Lua library
-# This module defines
-# LUA51_FOUND, if false, do not try to link to Lua
-# LUA_LIBRARIES
-# LUA_INCLUDE_DIR, where to find lua.h
-# LUA_VERSION_STRING, the version of Lua found (since CMake 2.8.8)
+#.rst:
+# FindLua51
+# ---------
+#
+#
+#
+# Locate Lua library This module defines
+#
+# ::
+#
+# LUA51_FOUND, if false, do not try to link to Lua
+# LUA_LIBRARIES
+# LUA_INCLUDE_DIR, where to find lua.h
+# LUA_VERSION_STRING, the version of Lua found (since CMake 2.8.8)
+#
+#
#
# Note that the expected include convention is
-# #include "lua.h"
+#
+# ::
+#
+# #include "lua.h"
+#
# and not
-# #include <lua/lua.h>
-# This is because, the lua location is not standardized and may exist
-# in locations other than lua/
+#
+# ::
+#
+# #include <lua/lua.h>
+#
+# This is because, the lua location is not standardized and may exist in
+# locations other than lua/
#=============================================================================
# Copyright 2007-2009 Kitware, Inc.
diff --git a/Modules/FindMFC.cmake b/Modules/FindMFC.cmake
index 4ff7586dcb..261ebdb4de 100644
--- a/Modules/FindMFC.cmake
+++ b/Modules/FindMFC.cmake
@@ -1,7 +1,16 @@
-# - Find MFC on Windows
-# Find the native MFC - i.e. decide if an application can link to the MFC
-# libraries.
-# MFC_FOUND - Was MFC support found
+#.rst:
+# FindMFC
+# -------
+#
+# Find MFC on Windows
+#
+# Find the native MFC - i.e. decide if an application can link to the
+# MFC libraries.
+#
+# ::
+#
+# MFC_FOUND - Was MFC support found
+#
# You don't need to include anything or link anything to use it.
#=============================================================================
diff --git a/Modules/FindMPEG.cmake b/Modules/FindMPEG.cmake
index f99f87b87f..26ee8dd433 100644
--- a/Modules/FindMPEG.cmake
+++ b/Modules/FindMPEG.cmake
@@ -1,11 +1,23 @@
-# - Find the native MPEG includes and library
+#.rst:
+# FindMPEG
+# --------
+#
+# Find the native MPEG includes and library
+#
# This module defines
-# MPEG_INCLUDE_DIR, where to find MPEG.h, etc.
-# MPEG_LIBRARIES, the libraries required to use MPEG.
-# MPEG_FOUND, If false, do not try to use MPEG.
+#
+# ::
+#
+# MPEG_INCLUDE_DIR, where to find MPEG.h, etc.
+# MPEG_LIBRARIES, the libraries required to use MPEG.
+# MPEG_FOUND, If false, do not try to use MPEG.
+#
# also defined, but not for general use are
-# MPEG_mpeg2_LIBRARY, where to find the MPEG library.
-# MPEG_vo_LIBRARY, where to find the vo library.
+#
+# ::
+#
+# MPEG_mpeg2_LIBRARY, where to find the MPEG library.
+# MPEG_vo_LIBRARY, where to find the vo library.
#=============================================================================
# Copyright 2002-2009 Kitware, Inc.
diff --git a/Modules/FindMPEG2.cmake b/Modules/FindMPEG2.cmake
index fc01c4c1d3..f2f207610d 100644
--- a/Modules/FindMPEG2.cmake
+++ b/Modules/FindMPEG2.cmake
@@ -1,11 +1,23 @@
-# - Find the native MPEG2 includes and library
+#.rst:
+# FindMPEG2
+# ---------
+#
+# Find the native MPEG2 includes and library
+#
# This module defines
-# MPEG2_INCLUDE_DIR, path to mpeg2dec/mpeg2.h, etc.
-# MPEG2_LIBRARIES, the libraries required to use MPEG2.
-# MPEG2_FOUND, If false, do not try to use MPEG2.
+#
+# ::
+#
+# MPEG2_INCLUDE_DIR, path to mpeg2dec/mpeg2.h, etc.
+# MPEG2_LIBRARIES, the libraries required to use MPEG2.
+# MPEG2_FOUND, If false, do not try to use MPEG2.
+#
# also defined, but not for general use are
-# MPEG2_mpeg2_LIBRARY, where to find the MPEG2 library.
-# MPEG2_vo_LIBRARY, where to find the vo library.
+#
+# ::
+#
+# MPEG2_mpeg2_LIBRARY, where to find the MPEG2 library.
+# MPEG2_vo_LIBRARY, where to find the vo library.
#=============================================================================
# Copyright 2003-2009 Kitware, Inc.
diff --git a/Modules/FindMPI.cmake b/Modules/FindMPI.cmake
index 0eb86a80a0..c8d46ba9db 100644
--- a/Modules/FindMPI.cmake
+++ b/Modules/FindMPI.cmake
@@ -1,64 +1,88 @@
-# - Find a Message Passing Interface (MPI) implementation
+#.rst:
+# FindMPI
+# -------
+#
+# Find a Message Passing Interface (MPI) implementation
+#
# The Message Passing Interface (MPI) is a library used to write
-# high-performance distributed-memory parallel applications, and
-# is typically deployed on a cluster. MPI is a standard interface
-# (defined by the MPI forum) for which many implementations are
-# available. All of them have somewhat different include paths,
-# libraries to link against, etc., and this module tries to smooth
-# out those differences.
+# high-performance distributed-memory parallel applications, and is
+# typically deployed on a cluster. MPI is a standard interface (defined
+# by the MPI forum) for which many implementations are available. All
+# of them have somewhat different include paths, libraries to link
+# against, etc., and this module tries to smooth out those differences.
#
# === Variables ===
#
-# This module will set the following variables per language in your project,
-# where <lang> is one of C, CXX, or Fortran:
-# MPI_<lang>_FOUND TRUE if FindMPI found MPI flags for <lang>
-# MPI_<lang>_COMPILER MPI Compiler wrapper for <lang>
-# MPI_<lang>_COMPILE_FLAGS Compilation flags for MPI programs
-# MPI_<lang>_INCLUDE_PATH Include path(s) for MPI header
-# MPI_<lang>_LINK_FLAGS Linking flags for MPI programs
-# MPI_<lang>_LIBRARIES All libraries to link MPI programs against
+# This module will set the following variables per language in your
+# project, where <lang> is one of C, CXX, or Fortran:
+#
+# ::
+#
+# MPI_<lang>_FOUND TRUE if FindMPI found MPI flags for <lang>
+# MPI_<lang>_COMPILER MPI Compiler wrapper for <lang>
+# MPI_<lang>_COMPILE_FLAGS Compilation flags for MPI programs
+# MPI_<lang>_INCLUDE_PATH Include path(s) for MPI header
+# MPI_<lang>_LINK_FLAGS Linking flags for MPI programs
+# MPI_<lang>_LIBRARIES All libraries to link MPI programs against
+#
# Additionally, FindMPI sets the following variables for running MPI
# programs from the command line:
-# MPIEXEC Executable for running MPI programs
-# MPIEXEC_NUMPROC_FLAG Flag to pass to MPIEXEC before giving
-# it the number of processors to run on
-# MPIEXEC_PREFLAGS Flags to pass to MPIEXEC directly
-# before the executable to run.
-# MPIEXEC_POSTFLAGS Flags to pass to MPIEXEC after other flags
+#
+# ::
+#
+# MPIEXEC Executable for running MPI programs
+# MPIEXEC_NUMPROC_FLAG Flag to pass to MPIEXEC before giving
+# it the number of processors to run on
+# MPIEXEC_PREFLAGS Flags to pass to MPIEXEC directly
+# before the executable to run.
+# MPIEXEC_POSTFLAGS Flags to pass to MPIEXEC after other flags
+#
# === Usage ===
#
# To use this module, simply call FindMPI from a CMakeLists.txt file, or
-# run find_package(MPI), then run CMake. If you are happy with the auto-
-# detected configuration for your language, then you're done. If not, you
-# have two options:
-# 1. Set MPI_<lang>_COMPILER to the MPI wrapper (mpicc, etc.) of your
-# choice and reconfigure. FindMPI will attempt to determine all the
-# necessary variables using THAT compiler's compile and link flags.
-# 2. If this fails, or if your MPI implementation does not come with
-# a compiler wrapper, then set both MPI_<lang>_LIBRARIES and
-# MPI_<lang>_INCLUDE_PATH. You may also set any other variables
-# listed above, but these two are required. This will circumvent
-# autodetection entirely.
-# When configuration is successful, MPI_<lang>_COMPILER will be set to the
-# compiler wrapper for <lang>, if it was found. MPI_<lang>_FOUND and other
-# variables above will be set if any MPI implementation was found for <lang>,
-# regardless of whether a compiler was found.
-#
-# When using MPIEXEC to execute MPI applications, you should typically use
-# all of the MPIEXEC flags as follows:
-# ${MPIEXEC} ${MPIEXEC_NUMPROC_FLAG} PROCS
-# ${MPIEXEC_PREFLAGS} EXECUTABLE ${MPIEXEC_POSTFLAGS} ARGS
-# where PROCS is the number of processors on which to execute the program,
-# EXECUTABLE is the MPI program, and ARGS are the arguments to pass to the
-# MPI program.
+# run find_package(MPI), then run CMake. If you are happy with the
+# auto- detected configuration for your language, then you're done. If
+# not, you have two options:
+#
+# ::
+#
+# 1. Set MPI_<lang>_COMPILER to the MPI wrapper (mpicc, etc.) of your
+# choice and reconfigure. FindMPI will attempt to determine all the
+# necessary variables using THAT compiler's compile and link flags.
+# 2. If this fails, or if your MPI implementation does not come with
+# a compiler wrapper, then set both MPI_<lang>_LIBRARIES and
+# MPI_<lang>_INCLUDE_PATH. You may also set any other variables
+# listed above, but these two are required. This will circumvent
+# autodetection entirely.
+#
+# When configuration is successful, MPI_<lang>_COMPILER will be set to
+# the compiler wrapper for <lang>, if it was found. MPI_<lang>_FOUND
+# and other variables above will be set if any MPI implementation was
+# found for <lang>, regardless of whether a compiler was found.
+#
+# When using MPIEXEC to execute MPI applications, you should typically
+# use all of the MPIEXEC flags as follows:
+#
+# ::
+#
+# ${MPIEXEC} ${MPIEXEC_NUMPROC_FLAG} PROCS
+# ${MPIEXEC_PREFLAGS} EXECUTABLE ${MPIEXEC_POSTFLAGS} ARGS
+#
+# where PROCS is the number of processors on which to execute the
+# program, EXECUTABLE is the MPI program, and ARGS are the arguments to
+# pass to the MPI program.
#
# === Backward Compatibility ===
#
# For backward compatibility with older versions of FindMPI, these
# variables are set, but deprecated:
-# MPI_FOUND MPI_COMPILER MPI_LIBRARY
-# MPI_COMPILE_FLAGS MPI_INCLUDE_PATH MPI_EXTRA_LIBRARY
-# MPI_LINK_FLAGS MPI_LIBRARIES
+#
+# ::
+#
+# MPI_FOUND MPI_COMPILER MPI_LIBRARY
+# MPI_COMPILE_FLAGS MPI_INCLUDE_PATH MPI_EXTRA_LIBRARY
+# MPI_LINK_FLAGS MPI_LIBRARIES
+#
# In new projects, please use the MPI_<lang>_XXX equivalents.
#=============================================================================
diff --git a/Modules/FindMatlab.cmake b/Modules/FindMatlab.cmake
index 8038488064..474556e720 100644
--- a/Modules/FindMatlab.cmake
+++ b/Modules/FindMatlab.cmake
@@ -1,10 +1,18 @@
-# - this module looks for Matlab
+#.rst:
+# FindMatlab
+# ----------
+#
+# this module looks for Matlab
+#
# Defines:
-# MATLAB_INCLUDE_DIR: include path for mex.h, engine.h
-# MATLAB_LIBRARIES: required libraries: libmex, etc
-# MATLAB_MEX_LIBRARY: path to libmex.lib
-# MATLAB_MX_LIBRARY: path to libmx.lib
-# MATLAB_ENG_LIBRARY: path to libeng.lib
+#
+# ::
+#
+# MATLAB_INCLUDE_DIR: include path for mex.h, engine.h
+# MATLAB_LIBRARIES: required libraries: libmex, etc
+# MATLAB_MEX_LIBRARY: path to libmex.lib
+# MATLAB_MX_LIBRARY: path to libmx.lib
+# MATLAB_ENG_LIBRARY: path to libeng.lib
#=============================================================================
# Copyright 2005-2009 Kitware, Inc.
diff --git a/Modules/FindMotif.cmake b/Modules/FindMotif.cmake
index 5065e3a2d2..a08ece4444 100644
--- a/Modules/FindMotif.cmake
+++ b/Modules/FindMotif.cmake
@@ -1,8 +1,16 @@
-# - Try to find Motif (or lesstif)
+#.rst:
+# FindMotif
+# ---------
+#
+# Try to find Motif (or lesstif)
+#
# Once done this will define:
-# MOTIF_FOUND - system has MOTIF
-# MOTIF_INCLUDE_DIR - include paths to use Motif
-# MOTIF_LIBRARIES - Link these to use Motif
+#
+# ::
+#
+# MOTIF_FOUND - system has MOTIF
+# MOTIF_INCLUDE_DIR - include paths to use Motif
+# MOTIF_LIBRARIES - Link these to use Motif
#=============================================================================
# Copyright 2005-2009 Kitware, Inc.
diff --git a/Modules/FindOpenAL.cmake b/Modules/FindOpenAL.cmake
index 78fd632a55..8150ff291d 100644
--- a/Modules/FindOpenAL.cmake
+++ b/Modules/FindOpenAL.cmake
@@ -1,14 +1,18 @@
-# Locate OpenAL
-# This module defines
-# OPENAL_LIBRARY
-# OPENAL_FOUND, if false, do not try to link to OpenAL
-# OPENAL_INCLUDE_DIR, where to find the headers
+#.rst:
+# FindOpenAL
+# ----------
#
-# $OPENALDIR is an environment variable that would
-# correspond to the ./configure --prefix=$OPENALDIR
-# used in building OpenAL.
#
-# Created by Eric Wing. This was influenced by the FindSDL.cmake module.
+#
+# Locate OpenAL This module defines OPENAL_LIBRARY OPENAL_FOUND, if
+# false, do not try to link to OpenAL OPENAL_INCLUDE_DIR, where to find
+# the headers
+#
+# $OPENALDIR is an environment variable that would correspond to the
+# ./configure --prefix=$OPENALDIR used in building OpenAL.
+#
+# Created by Eric Wing. This was influenced by the FindSDL.cmake
+# module.
#=============================================================================
# Copyright 2005-2009 Kitware, Inc.
diff --git a/Modules/FindOpenGL.cmake b/Modules/FindOpenGL.cmake
index 83fcc3dc76..21c2198648 100644
--- a/Modules/FindOpenGL.cmake
+++ b/Modules/FindOpenGL.cmake
@@ -1,19 +1,33 @@
-# - Try to find OpenGL
+#.rst:
+# FindOpenGL
+# ----------
+#
+# Try to find OpenGL
+#
# Once done this will define
#
-# OPENGL_FOUND - system has OpenGL
-# OPENGL_XMESA_FOUND - system has XMESA
-# OPENGL_GLU_FOUND - system has GLU
-# OPENGL_INCLUDE_DIR - the GL include directory
-# OPENGL_LIBRARIES - Link these to use OpenGL and GLU
+# ::
+#
+# OPENGL_FOUND - system has OpenGL
+# OPENGL_XMESA_FOUND - system has XMESA
+# OPENGL_GLU_FOUND - system has GLU
+# OPENGL_INCLUDE_DIR - the GL include directory
+# OPENGL_LIBRARIES - Link these to use OpenGL and GLU
+#
+#
#
# If you want to use just GL you can use these values
-# OPENGL_gl_LIBRARY - Path to OpenGL Library
-# OPENGL_glu_LIBRARY - Path to GLU Library
#
-# On OSX default to using the framework version of opengl
-# People will have to change the cache values of OPENGL_glu_LIBRARY
-# and OPENGL_gl_LIBRARY to use OpenGL with X11 on OSX
+# ::
+#
+# OPENGL_gl_LIBRARY - Path to OpenGL Library
+# OPENGL_glu_LIBRARY - Path to GLU Library
+#
+#
+#
+# On OSX default to using the framework version of opengl People will
+# have to change the cache values of OPENGL_glu_LIBRARY and
+# OPENGL_gl_LIBRARY to use OpenGL with X11 on OSX
#=============================================================================
# Copyright 2001-2009 Kitware, Inc.
diff --git a/Modules/FindOpenMP.cmake b/Modules/FindOpenMP.cmake
index f4a9f44c6d..ba03f25b77 100644
--- a/Modules/FindOpenMP.cmake
+++ b/Modules/FindOpenMP.cmake
@@ -1,16 +1,27 @@
-# - Finds OpenMP support
-# This module can be used to detect OpenMP support in a compiler.
-# If the compiler supports OpenMP, the flags required to compile with
+#.rst:
+# FindOpenMP
+# ----------
+#
+# Finds OpenMP support
+#
+# This module can be used to detect OpenMP support in a compiler. If
+# the compiler supports OpenMP, the flags required to compile with
# OpenMP support are returned in variables for the different languages.
# The variables may be empty if the compiler does not need a special
# flag to support OpenMP.
#
# The following variables are set:
-# OpenMP_C_FLAGS - flags to add to the C compiler for OpenMP support
-# OpenMP_CXX_FLAGS - flags to add to the CXX compiler for OpenMP support
-# OPENMP_FOUND - true if openmp is detected
#
-# Supported compilers can be found at http://openmp.org/wp/openmp-compilers/
+# ::
+#
+# OpenMP_C_FLAGS - flags to add to the C compiler for OpenMP support
+# OpenMP_CXX_FLAGS - flags to add to the CXX compiler for OpenMP support
+# OPENMP_FOUND - true if openmp is detected
+#
+#
+#
+# Supported compilers can be found at
+# http://openmp.org/wp/openmp-compilers/
#=============================================================================
# Copyright 2009 Kitware, Inc.
diff --git a/Modules/FindOpenSSL.cmake b/Modules/FindOpenSSL.cmake
index b610438fa4..6bf2aadf97 100644
--- a/Modules/FindOpenSSL.cmake
+++ b/Modules/FindOpenSSL.cmake
@@ -1,13 +1,25 @@
-# - Try to find the OpenSSL encryption library
+#.rst:
+# FindOpenSSL
+# -----------
+#
+# Try to find the OpenSSL encryption library
+#
# Once done this will define
#
-# OPENSSL_ROOT_DIR - Set this variable to the root installation of OpenSSL
+# ::
+#
+# OPENSSL_ROOT_DIR - Set this variable to the root installation of OpenSSL
+#
+#
#
# Read-Only variables:
-# OPENSSL_FOUND - system has the OpenSSL library
-# OPENSSL_INCLUDE_DIR - the OpenSSL include directory
-# OPENSSL_LIBRARIES - The libraries needed to use OpenSSL
-# OPENSSL_VERSION - This is set to $major.$minor.$revision$path (eg. 0.9.8s)
+#
+# ::
+#
+# OPENSSL_FOUND - system has the OpenSSL library
+# OPENSSL_INCLUDE_DIR - the OpenSSL include directory
+# OPENSSL_LIBRARIES - The libraries needed to use OpenSSL
+# OPENSSL_VERSION - This is set to $major.$minor.$revision$path (eg. 0.9.8s)
#=============================================================================
# Copyright 2006-2009 Kitware, Inc.
diff --git a/Modules/FindOpenSceneGraph.cmake b/Modules/FindOpenSceneGraph.cmake
index 7affca8a21..7bbd7536a0 100644
--- a/Modules/FindOpenSceneGraph.cmake
+++ b/Modules/FindOpenSceneGraph.cmake
@@ -1,55 +1,98 @@
-# - Find OpenSceneGraph
-# This module searches for the OpenSceneGraph core "osg" library as well as
-# OpenThreads, and whatever additional COMPONENTS (nodekits) that you specify.
-# See http://www.openscenegraph.org
+#.rst:
+# FindOpenSceneGraph
+# ------------------
#
-# NOTE: To use this module effectively you must either require CMake >= 2.6.3
-# with cmake_minimum_required(VERSION 2.6.3) or download and place
-# FindOpenThreads.cmake, Findosg_functions.cmake, Findosg.cmake,
-# and Find<etc>.cmake files into your CMAKE_MODULE_PATH.
+# Find OpenSceneGraph
#
-#==================================
+# This module searches for the OpenSceneGraph core "osg" library as well
+# as OpenThreads, and whatever additional COMPONENTS (nodekits) that you
+# specify.
+#
+# ::
+#
+# See http://www.openscenegraph.org
+#
+#
+#
+# NOTE: To use this module effectively you must either require CMake >=
+# 2.6.3 with cmake_minimum_required(VERSION 2.6.3) or download and place
+# FindOpenThreads.cmake, Findosg_functions.cmake, Findosg.cmake, and
+# Find<etc>.cmake files into your CMAKE_MODULE_PATH.
+#
+# ==================================
#
# This module accepts the following variables (note mixed case)
#
-# OpenSceneGraph_DEBUG - Enable debugging output
+# ::
+#
+# OpenSceneGraph_DEBUG - Enable debugging output
+#
+#
+#
+# ::
+#
+# OpenSceneGraph_MARK_AS_ADVANCED - Mark cache variables as advanced
+# automatically
+#
+#
+#
+# The following environment variables are also respected for finding the
+# OSG and it's various components. CMAKE_PREFIX_PATH can also be used
+# for this (see find_library() CMake documentation).
+#
+# ::
#
-# OpenSceneGraph_MARK_AS_ADVANCED - Mark cache variables as advanced
-# automatically
+# <MODULE>_DIR (where MODULE is of the form "OSGVOLUME" and there is a FindosgVolume.cmake file)
+# OSG_DIR
+# OSGDIR
+# OSG_ROOT
#
-# The following environment variables are also respected for finding the OSG
-# and it's various components. CMAKE_PREFIX_PATH can also be used for this
-# (see find_library() CMake documentation).
#
-# <MODULE>_DIR (where MODULE is of the form "OSGVOLUME" and there is a FindosgVolume.cmake file)
-# OSG_DIR
-# OSGDIR
-# OSG_ROOT
#
-# [CMake 2.8.10]:
-# The CMake variable OSG_DIR can now be used as well to influence detection, instead of needing
-# to specify an environment variable.
+# [CMake 2.8.10]: The CMake variable OSG_DIR can now be used as well to
+# influence detection, instead of needing to specify an environment
+# variable.
#
# This module defines the following output variables:
#
-# OPENSCENEGRAPH_FOUND - Was the OSG and all of the specified components found?
+# ::
+#
+# OPENSCENEGRAPH_FOUND - Was the OSG and all of the specified components found?
+#
+#
+#
+# ::
+#
+# OPENSCENEGRAPH_VERSION - The version of the OSG which was found
+#
+#
+#
+# ::
+#
+# OPENSCENEGRAPH_INCLUDE_DIRS - Where to find the headers
+#
+#
+#
+# ::
+#
+# OPENSCENEGRAPH_LIBRARIES - The OSG libraries
+#
+#
#
-# OPENSCENEGRAPH_VERSION - The version of the OSG which was found
+# ================================== Example Usage:
#
-# OPENSCENEGRAPH_INCLUDE_DIRS - Where to find the headers
+# ::
#
-# OPENSCENEGRAPH_LIBRARIES - The OSG libraries
+# find_package(OpenSceneGraph 2.0.0 REQUIRED osgDB osgUtil)
+# # libOpenThreads & libosg automatically searched
+# include_directories(${OPENSCENEGRAPH_INCLUDE_DIRS})
#
-#==================================
-# Example Usage:
#
-# find_package(OpenSceneGraph 2.0.0 REQUIRED osgDB osgUtil)
-# # libOpenThreads & libosg automatically searched
-# include_directories(${OPENSCENEGRAPH_INCLUDE_DIRS})
#
-# add_executable(foo foo.cc)
-# target_link_libraries(foo ${OPENSCENEGRAPH_LIBRARIES})
+# ::
#
+# add_executable(foo foo.cc)
+# target_link_libraries(foo ${OPENSCENEGRAPH_LIBRARIES})
#=============================================================================
# Copyright 2009 Kitware, Inc.
diff --git a/Modules/FindOpenThreads.cmake b/Modules/FindOpenThreads.cmake
index e0599604aa..69bab3dd0c 100644
--- a/Modules/FindOpenThreads.cmake
+++ b/Modules/FindOpenThreads.cmake
@@ -1,23 +1,25 @@
-# OpenThreads is a C++ based threading library. Its largest userbase
+#.rst:
+# FindOpenThreads
+# ---------------
+#
+#
+#
+# OpenThreads is a C++ based threading library. Its largest userbase
# seems to OpenSceneGraph so you might notice I accept OSGDIR as an
-# environment path.
-# I consider this part of the Findosg* suite used to find OpenSceneGraph
-# components.
-# Each component is separate and you must opt in to each module.
+# environment path. I consider this part of the Findosg* suite used to
+# find OpenSceneGraph components. Each component is separate and you
+# must opt in to each module.
#
-# Locate OpenThreads
-# This module defines
-# OPENTHREADS_LIBRARY
+# Locate OpenThreads This module defines OPENTHREADS_LIBRARY
# OPENTHREADS_FOUND, if false, do not try to link to OpenThreads
# OPENTHREADS_INCLUDE_DIR, where to find the headers
#
-# $OPENTHREADS_DIR is an environment variable that would
-# correspond to the ./configure --prefix=$OPENTHREADS_DIR
-# used in building osg.
+# $OPENTHREADS_DIR is an environment variable that would correspond to
+# the ./configure --prefix=$OPENTHREADS_DIR used in building osg.
#
-# [CMake 2.8.10]:
-# The CMake variables OPENTHREADS_DIR or OSG_DIR can now be used as well to influence
-# detection, instead of needing to specify an environment variable.
+# [CMake 2.8.10]: The CMake variables OPENTHREADS_DIR or OSG_DIR can now
+# be used as well to influence detection, instead of needing to specify
+# an environment variable.
#
# Created by Eric Wing.
diff --git a/Modules/FindPHP4.cmake b/Modules/FindPHP4.cmake
index 4267ac155d..51a89f3693 100644
--- a/Modules/FindPHP4.cmake
+++ b/Modules/FindPHP4.cmake
@@ -1,11 +1,17 @@
-# - Find PHP4
-# This module finds if PHP4 is installed and determines where the include files
-# and libraries are. It also determines what the name of the library is. This
-# code sets the following variables:
+#.rst:
+# FindPHP4
+# --------
#
-# PHP4_INCLUDE_PATH = path to where php.h can be found
-# PHP4_EXECUTABLE = full path to the php4 binary
+# Find PHP4
#
+# This module finds if PHP4 is installed and determines where the
+# include files and libraries are. It also determines what the name of
+# the library is. This code sets the following variables:
+#
+# ::
+#
+# PHP4_INCLUDE_PATH = path to where php.h can be found
+# PHP4_EXECUTABLE = full path to the php4 binary
#=============================================================================
# Copyright 2004-2009 Kitware, Inc.
diff --git a/Modules/FindPNG.cmake b/Modules/FindPNG.cmake
index a2577d26b0..873c3dedee 100644
--- a/Modules/FindPNG.cmake
+++ b/Modules/FindPNG.cmake
@@ -1,19 +1,34 @@
-# - Find the native PNG includes and library
+#.rst:
+# FindPNG
+# -------
+#
+# Find the native PNG includes and library
+#
+#
#
# This module searches libpng, the library for working with PNG images.
#
# It defines the following variables
-# PNG_INCLUDE_DIRS, where to find png.h, etc.
-# PNG_LIBRARIES, the libraries to link against to use PNG.
-# PNG_DEFINITIONS - You should add_definitons(${PNG_DEFINITIONS}) before compiling code that includes png library files.
-# PNG_FOUND, If false, do not try to use PNG.
-# PNG_VERSION_STRING - the version of the PNG library found (since CMake 2.8.8)
+#
+# ::
+#
+# PNG_INCLUDE_DIRS, where to find png.h, etc.
+# PNG_LIBRARIES, the libraries to link against to use PNG.
+# PNG_DEFINITIONS - You should add_definitons(${PNG_DEFINITIONS}) before compiling code that includes png library files.
+# PNG_FOUND, If false, do not try to use PNG.
+# PNG_VERSION_STRING - the version of the PNG library found (since CMake 2.8.8)
+#
# Also defined, but not for general use are
-# PNG_LIBRARY, where to find the PNG library.
-# For backward compatiblity the variable PNG_INCLUDE_DIR is also set. It has the same value as PNG_INCLUDE_DIRS.
#
-# Since PNG depends on the ZLib compression library, none of the above will be
-# defined unless ZLib can be found.
+# ::
+#
+# PNG_LIBRARY, where to find the PNG library.
+#
+# For backward compatiblity the variable PNG_INCLUDE_DIR is also set.
+# It has the same value as PNG_INCLUDE_DIRS.
+#
+# Since PNG depends on the ZLib compression library, none of the above
+# will be defined unless ZLib can be found.
#=============================================================================
# Copyright 2002-2009 Kitware, Inc.
diff --git a/Modules/FindPackageHandleStandardArgs.cmake b/Modules/FindPackageHandleStandardArgs.cmake
index 70423a7e43..d03041852d 100644
--- a/Modules/FindPackageHandleStandardArgs.cmake
+++ b/Modules/FindPackageHandleStandardArgs.cmake
@@ -1,89 +1,117 @@
-# FIND_PACKAGE_HANDLE_STANDARD_ARGS(<name> ... )
+#.rst:
+# FindPackageHandleStandardArgs
+# -----------------------------
+#
+#
+#
+# FIND_PACKAGE_HANDLE_STANDARD_ARGS(<name> ... )
#
# This function is intended to be used in FindXXX.cmake modules files.
-# It handles the REQUIRED, QUIET and version-related arguments to find_package().
-# It also sets the <packagename>_FOUND variable.
-# The package is considered found if all variables <var1>... listed contain
-# valid results, e.g. valid filepaths.
+# It handles the REQUIRED, QUIET and version-related arguments to
+# find_package(). It also sets the <packagename>_FOUND variable. The
+# package is considered found if all variables <var1>... listed contain
+# valid results, e.g. valid filepaths.
#
-# There are two modes of this function. The first argument in both modes is
-# the name of the Find-module where it is called (in original casing).
+# There are two modes of this function. The first argument in both
+# modes is the name of the Find-module where it is called (in original
+# casing).
#
# The first simple mode looks like this:
-# FIND_PACKAGE_HANDLE_STANDARD_ARGS(<name> (DEFAULT_MSG|"Custom failure message") <var1>...<varN> )
-# If the variables <var1> to <varN> are all valid, then <UPPERCASED_NAME>_FOUND
-# will be set to TRUE.
-# If DEFAULT_MSG is given as second argument, then the function will generate
-# itself useful success and error messages. You can also supply a custom error message
-# for the failure case. This is not recommended.
+#
+# ::
+#
+# FIND_PACKAGE_HANDLE_STANDARD_ARGS(<name> (DEFAULT_MSG|"Custom failure message") <var1>...<varN> )
+#
+# If the variables <var1> to <varN> are all valid, then
+# <UPPERCASED_NAME>_FOUND will be set to TRUE. If DEFAULT_MSG is given
+# as second argument, then the function will generate itself useful
+# success and error messages. You can also supply a custom error
+# message for the failure case. This is not recommended.
#
# The second mode is more powerful and also supports version checking:
-# FIND_PACKAGE_HANDLE_STANDARD_ARGS(NAME [FOUND_VAR <resultVar>]
-# [REQUIRED_VARS <var1>...<varN>]
-# [VERSION_VAR <versionvar>]
-# [HANDLE_COMPONENTS]
-# [CONFIG_MODE]
-# [FAIL_MESSAGE "Custom failure message"] )
-#
-# In this mode, the name of the result-variable can be set either to either
-# <UPPERCASED_NAME>_FOUND or <OriginalCase_Name>_FOUND using the FOUND_VAR option.
-# Other names for the result-variable are not allowed.
-# So for a Find-module named FindFooBar.cmake, the two possible names are
-# FooBar_FOUND and FOOBAR_FOUND. It is recommended to use the original case version.
-# If the FOUND_VAR option is not used, the default is <UPPERCASED_NAME>_FOUND.
+#
+# ::
+#
+# FIND_PACKAGE_HANDLE_STANDARD_ARGS(NAME [FOUND_VAR <resultVar>]
+# [REQUIRED_VARS <var1>...<varN>]
+# [VERSION_VAR <versionvar>]
+# [HANDLE_COMPONENTS]
+# [CONFIG_MODE]
+# [FAIL_MESSAGE "Custom failure message"] )
+#
+#
+#
+# In this mode, the name of the result-variable can be set either to
+# either <UPPERCASED_NAME>_FOUND or <OriginalCase_Name>_FOUND using the
+# FOUND_VAR option. Other names for the result-variable are not
+# allowed. So for a Find-module named FindFooBar.cmake, the two
+# possible names are FooBar_FOUND and FOOBAR_FOUND. It is recommended
+# to use the original case version. If the FOUND_VAR option is not
+# used, the default is <UPPERCASED_NAME>_FOUND.
#
# As in the simple mode, if <var1> through <varN> are all valid,
-# <packagename>_FOUND will be set to TRUE.
-# After REQUIRED_VARS the variables which are required for this package are listed.
-# Following VERSION_VAR the name of the variable can be specified which holds
-# the version of the package which has been found. If this is done, this version
-# will be checked against the (potentially) specified required version used
-# in the find_package() call. The EXACT keyword is also handled. The default
-# messages include information about the required version and the version
-# which has been actually found, both if the version is ok or not.
-# If the package supports components, use the HANDLE_COMPONENTS option to enable
-# handling them. In this case, find_package_handle_standard_args() will report
-# which components have been found and which are missing, and the <packagename>_FOUND
-# variable will be set to FALSE if any of the required components (i.e. not the
-# ones listed after OPTIONAL_COMPONENTS) are missing.
-# Use the option CONFIG_MODE if your FindXXX.cmake module is a wrapper for
-# a find_package(... NO_MODULE) call. In this case VERSION_VAR will be set
-# to <NAME>_VERSION and the macro will automatically check whether the
-# Config module was found.
-# Via FAIL_MESSAGE a custom failure message can be specified, if this is not
-# used, the default message will be displayed.
+# <packagename>_FOUND will be set to TRUE. After REQUIRED_VARS the
+# variables which are required for this package are listed. Following
+# VERSION_VAR the name of the variable can be specified which holds the
+# version of the package which has been found. If this is done, this
+# version will be checked against the (potentially) specified required
+# version used in the find_package() call. The EXACT keyword is also
+# handled. The default messages include information about the required
+# version and the version which has been actually found, both if the
+# version is ok or not. If the package supports components, use the
+# HANDLE_COMPONENTS option to enable handling them. In this case,
+# find_package_handle_standard_args() will report which components have
+# been found and which are missing, and the <packagename>_FOUND variable
+# will be set to FALSE if any of the required components (i.e. not the
+# ones listed after OPTIONAL_COMPONENTS) are missing. Use the option
+# CONFIG_MODE if your FindXXX.cmake module is a wrapper for a
+# find_package(... NO_MODULE) call. In this case VERSION_VAR will be
+# set to <NAME>_VERSION and the macro will automatically check whether
+# the Config module was found. Via FAIL_MESSAGE a custom failure
+# message can be specified, if this is not used, the default message
+# will be displayed.
#
# Example for mode 1:
#
-# find_package_handle_standard_args(LibXml2 DEFAULT_MSG LIBXML2_LIBRARY LIBXML2_INCLUDE_DIR)
+# ::
+#
+# find_package_handle_standard_args(LibXml2 DEFAULT_MSG LIBXML2_LIBRARY LIBXML2_INCLUDE_DIR)
+#
+#
#
# LibXml2 is considered to be found, if both LIBXML2_LIBRARY and
-# LIBXML2_INCLUDE_DIR are valid. Then also LIBXML2_FOUND is set to TRUE.
-# If it is not found and REQUIRED was used, it fails with FATAL_ERROR,
-# independent whether QUIET was used or not.
-# If it is found, success will be reported, including the content of <var1>.
-# On repeated Cmake runs, the same message won't be printed again.
+# LIBXML2_INCLUDE_DIR are valid. Then also LIBXML2_FOUND is set to
+# TRUE. If it is not found and REQUIRED was used, it fails with
+# FATAL_ERROR, independent whether QUIET was used or not. If it is
+# found, success will be reported, including the content of <var1>. On
+# repeated Cmake runs, the same message won't be printed again.
#
# Example for mode 2:
#
-# find_package_handle_standard_args(LibXslt FOUND_VAR LibXslt_FOUND
-# REQUIRED_VARS LibXslt_LIBRARIES LibXslt_INCLUDE_DIRS
-# VERSION_VAR LibXslt_VERSION_STRING)
-# In this case, LibXslt is considered to be found if the variable(s) listed
-# after REQUIRED_VAR are all valid, i.e. LibXslt_LIBRARIES and LibXslt_INCLUDE_DIRS
-# in this case. The result will then be stored in LibXslt_FOUND .
-# Also the version of LibXslt will be checked by using the version contained
-# in LibXslt_VERSION_STRING.
-# Since no FAIL_MESSAGE is given, the default messages will be printed.
+# ::
+#
+# find_package_handle_standard_args(LibXslt FOUND_VAR LibXslt_FOUND
+# REQUIRED_VARS LibXslt_LIBRARIES LibXslt_INCLUDE_DIRS
+# VERSION_VAR LibXslt_VERSION_STRING)
+#
+# In this case, LibXslt is considered to be found if the variable(s)
+# listed after REQUIRED_VAR are all valid, i.e. LibXslt_LIBRARIES and
+# LibXslt_INCLUDE_DIRS in this case. The result will then be stored in
+# LibXslt_FOUND . Also the version of LibXslt will be checked by using
+# the version contained in LibXslt_VERSION_STRING. Since no
+# FAIL_MESSAGE is given, the default messages will be printed.
#
# Another example for mode 2:
#
-# find_package(Automoc4 QUIET NO_MODULE HINTS /opt/automoc4)
-# find_package_handle_standard_args(Automoc4 CONFIG_MODE)
-# In this case, FindAutmoc4.cmake wraps a call to find_package(Automoc4 NO_MODULE)
-# and adds an additional search directory for automoc4.
-# Here the result will be stored in AUTOMOC4_FOUND.
-# The following FIND_PACKAGE_HANDLE_STANDARD_ARGS() call produces a proper
+# ::
+#
+# find_package(Automoc4 QUIET NO_MODULE HINTS /opt/automoc4)
+# find_package_handle_standard_args(Automoc4 CONFIG_MODE)
+#
+# In this case, FindAutmoc4.cmake wraps a call to find_package(Automoc4
+# NO_MODULE) and adds an additional search directory for automoc4. Here
+# the result will be stored in AUTOMOC4_FOUND. The following
+# FIND_PACKAGE_HANDLE_STANDARD_ARGS() call produces a proper
# success/error message.
#=============================================================================
diff --git a/Modules/FindPackageMessage.cmake b/Modules/FindPackageMessage.cmake
index 5cea43e352..b6a58e427d 100644
--- a/Modules/FindPackageMessage.cmake
+++ b/Modules/FindPackageMessage.cmake
@@ -1,22 +1,30 @@
+#.rst:
+# FindPackageMessage
+# ------------------
+#
+#
+#
# FIND_PACKAGE_MESSAGE(<name> "message for user" "find result details")
#
-# This macro is intended to be used in FindXXX.cmake modules files.
-# It will print a message once for each unique find result.
-# This is useful for telling the user where a package was found.
-# The first argument specifies the name (XXX) of the package.
-# The second argument specifies the message to display.
-# The third argument lists details about the find result so that
-# if they change the message will be displayed again.
-# The macro also obeys the QUIET argument to the find_package command.
+# This macro is intended to be used in FindXXX.cmake modules files. It
+# will print a message once for each unique find result. This is useful
+# for telling the user where a package was found. The first argument
+# specifies the name (XXX) of the package. The second argument
+# specifies the message to display. The third argument lists details
+# about the find result so that if they change the message will be
+# displayed again. The macro also obeys the QUIET argument to the
+# find_package command.
#
# Example:
#
-# if(X11_FOUND)
-# FIND_PACKAGE_MESSAGE(X11 "Found X11: ${X11_X11_LIB}"
-# "[${X11_X11_LIB}][${X11_INCLUDE_DIR}]")
-# else()
-# ...
-# endif()
+# ::
+#
+# if(X11_FOUND)
+# FIND_PACKAGE_MESSAGE(X11 "Found X11: ${X11_X11_LIB}"
+# "[${X11_X11_LIB}][${X11_INCLUDE_DIR}]")
+# else()
+# ...
+# endif()
#=============================================================================
# Copyright 2008-2009 Kitware, Inc.
diff --git a/Modules/FindPerl.cmake b/Modules/FindPerl.cmake
index 5eaf207684..3fd5d8ef6f 100644
--- a/Modules/FindPerl.cmake
+++ b/Modules/FindPerl.cmake
@@ -1,9 +1,16 @@
-# - Find perl
+#.rst:
+# FindPerl
+# --------
+#
+# Find perl
+#
# this module looks for Perl
#
-# PERL_EXECUTABLE - the full path to perl
-# PERL_FOUND - If false, don't attempt to use perl.
-# PERL_VERSION_STRING - version of perl found (since CMake 2.8.8)
+# ::
+#
+# PERL_EXECUTABLE - the full path to perl
+# PERL_FOUND - If false, don't attempt to use perl.
+# PERL_VERSION_STRING - version of perl found (since CMake 2.8.8)
#=============================================================================
# Copyright 2001-2009 Kitware, Inc.
diff --git a/Modules/FindPerlLibs.cmake b/Modules/FindPerlLibs.cmake
index 492f047706..54ccd249fc 100644
--- a/Modules/FindPerlLibs.cmake
+++ b/Modules/FindPerlLibs.cmake
@@ -1,27 +1,41 @@
-# - Find Perl libraries
-# This module finds if PERL is installed and determines where the include files
-# and libraries are. It also determines what the name of the library is. This
-# code sets the following variables:
+#.rst:
+# FindPerlLibs
+# ------------
+#
+# Find Perl libraries
+#
+# This module finds if PERL is installed and determines where the
+# include files and libraries are. It also determines what the name of
+# the library is. This code sets the following variables:
+#
+# ::
+#
+# PERLLIBS_FOUND = True if perl.h & libperl were found
+# PERL_INCLUDE_PATH = path to where perl.h is found
+# PERL_LIBRARY = path to libperl
+# PERL_EXECUTABLE = full path to the perl binary
+#
#
-# PERLLIBS_FOUND = True if perl.h & libperl were found
-# PERL_INCLUDE_PATH = path to where perl.h is found
-# PERL_LIBRARY = path to libperl
-# PERL_EXECUTABLE = full path to the perl binary
#
# The minimum required version of Perl can be specified using the
-# standard syntax, e.g. find_package(PerlLibs 6.0)
+# standard syntax, e.g. find_package(PerlLibs 6.0)
+#
+# ::
+#
+# The following variables are also available if needed
+# (introduced after CMake 2.6.4)
+#
#
-# The following variables are also available if needed
-# (introduced after CMake 2.6.4)
#
-# PERL_SITESEARCH = path to the sitesearch install dir
-# PERL_SITELIB = path to the sitelib install directory
-# PERL_VENDORARCH = path to the vendor arch install directory
-# PERL_VENDORLIB = path to the vendor lib install directory
-# PERL_ARCHLIB = path to the arch lib install directory
-# PERL_PRIVLIB = path to the priv lib install directory
-# PERL_EXTRA_C_FLAGS = Compilation flags used to build perl
+# ::
#
+# PERL_SITESEARCH = path to the sitesearch install dir
+# PERL_SITELIB = path to the sitelib install directory
+# PERL_VENDORARCH = path to the vendor arch install directory
+# PERL_VENDORLIB = path to the vendor lib install directory
+# PERL_ARCHLIB = path to the arch lib install directory
+# PERL_PRIVLIB = path to the priv lib install directory
+# PERL_EXTRA_C_FLAGS = Compilation flags used to build perl
#=============================================================================
# Copyright 2004-2009 Kitware, Inc.
diff --git a/Modules/FindPhysFS.cmake b/Modules/FindPhysFS.cmake
index a2d6abf9b4..ff584c7ffc 100644
--- a/Modules/FindPhysFS.cmake
+++ b/Modules/FindPhysFS.cmake
@@ -1,12 +1,15 @@
-# Locate PhysFS library
-# This module defines
-# PHYSFS_LIBRARY, the name of the library to link against
-# PHYSFS_FOUND, if false, do not try to link to PHYSFS
-# PHYSFS_INCLUDE_DIR, where to find physfs.h
+#.rst:
+# FindPhysFS
+# ----------
#
-# $PHYSFSDIR is an environment variable that would
-# correspond to the ./configure --prefix=$PHYSFSDIR
-# used in building PHYSFS.
+#
+#
+# Locate PhysFS library This module defines PHYSFS_LIBRARY, the name of
+# the library to link against PHYSFS_FOUND, if false, do not try to link
+# to PHYSFS PHYSFS_INCLUDE_DIR, where to find physfs.h
+#
+# $PHYSFSDIR is an environment variable that would correspond to the
+# ./configure --prefix=$PHYSFSDIR used in building PHYSFS.
#
# Created by Eric Wing.
diff --git a/Modules/FindPike.cmake b/Modules/FindPike.cmake
index 5b48ab4e75..2d6a03d453 100644
--- a/Modules/FindPike.cmake
+++ b/Modules/FindPike.cmake
@@ -1,11 +1,17 @@
-# - Find Pike
-# This module finds if PIKE is installed and determines where the include files
-# and libraries are. It also determines what the name of the library is. This
-# code sets the following variables:
+#.rst:
+# FindPike
+# --------
#
-# PIKE_INCLUDE_PATH = path to where program.h is found
-# PIKE_EXECUTABLE = full path to the pike binary
+# Find Pike
#
+# This module finds if PIKE is installed and determines where the
+# include files and libraries are. It also determines what the name of
+# the library is. This code sets the following variables:
+#
+# ::
+#
+# PIKE_INCLUDE_PATH = path to where program.h is found
+# PIKE_EXECUTABLE = full path to the pike binary
#=============================================================================
# Copyright 2004-2009 Kitware, Inc.
diff --git a/Modules/FindPkgConfig.cmake b/Modules/FindPkgConfig.cmake
index 2766f97808..e6fdefe8c1 100644
--- a/Modules/FindPkgConfig.cmake
+++ b/Modules/FindPkgConfig.cmake
@@ -1,11 +1,26 @@
-# - a pkg-config module for CMake
+#.rst:
+# FindPkgConfig
+# -------------
+#
+# a pkg-config module for CMake
+#
+#
#
# Usage:
-# pkg_check_modules(<PREFIX> [REQUIRED] [QUIET] <MODULE> [<MODULE>]*)
-# checks for all the given modules
#
-# pkg_search_module(<PREFIX> [REQUIRED] [QUIET] <MODULE> [<MODULE>]*)
-# checks for given modules and uses the first working one
+# ::
+#
+# pkg_check_modules(<PREFIX> [REQUIRED] [QUIET] <MODULE> [<MODULE>]*)
+# checks for all the given modules
+#
+#
+#
+# ::
+#
+# pkg_search_module(<PREFIX> [REQUIRED] [QUIET] <MODULE> [<MODULE>]*)
+# checks for given modules and uses the first working one
+#
+#
#
# When the 'REQUIRED' argument was set, macros will fail with an error
# when module(s) could not be found
@@ -13,63 +28,110 @@
# When the 'QUIET' argument is set, no status messages will be printed.
#
# It sets the following variables:
-# PKG_CONFIG_FOUND ... if pkg-config executable was found
-# PKG_CONFIG_EXECUTABLE ... pathname of the pkg-config program
-# PKG_CONFIG_VERSION_STRING ... the version of the pkg-config program found
-# (since CMake 2.8.8)
+#
+# ::
+#
+# PKG_CONFIG_FOUND ... if pkg-config executable was found
+# PKG_CONFIG_EXECUTABLE ... pathname of the pkg-config program
+# PKG_CONFIG_VERSION_STRING ... the version of the pkg-config program found
+# (since CMake 2.8.8)
+#
+#
#
# For the following variables two sets of values exist; first one is the
-# common one and has the given PREFIX. The second set contains flags
+# common one and has the given PREFIX. The second set contains flags
# which are given out when pkgconfig was called with the '--static'
# option.
-# <XPREFIX>_FOUND ... set to 1 if module(s) exist
-# <XPREFIX>_LIBRARIES ... only the libraries (w/o the '-l')
-# <XPREFIX>_LIBRARY_DIRS ... the paths of the libraries (w/o the '-L')
-# <XPREFIX>_LDFLAGS ... all required linker flags
-# <XPREFIX>_LDFLAGS_OTHER ... all other linker flags
-# <XPREFIX>_INCLUDE_DIRS ... the '-I' preprocessor flags (w/o the '-I')
-# <XPREFIX>_CFLAGS ... all required cflags
-# <XPREFIX>_CFLAGS_OTHER ... the other compiler flags
-#
-# <XPREFIX> = <PREFIX> for common case
-# <XPREFIX> = <PREFIX>_STATIC for static linking
-#
-# There are some special variables whose prefix depends on the count
-# of given modules. When there is only one module, <PREFIX> stays
-# unchanged. When there are multiple modules, the prefix will be
+#
+# ::
+#
+# <XPREFIX>_FOUND ... set to 1 if module(s) exist
+# <XPREFIX>_LIBRARIES ... only the libraries (w/o the '-l')
+# <XPREFIX>_LIBRARY_DIRS ... the paths of the libraries (w/o the '-L')
+# <XPREFIX>_LDFLAGS ... all required linker flags
+# <XPREFIX>_LDFLAGS_OTHER ... all other linker flags
+# <XPREFIX>_INCLUDE_DIRS ... the '-I' preprocessor flags (w/o the '-I')
+# <XPREFIX>_CFLAGS ... all required cflags
+# <XPREFIX>_CFLAGS_OTHER ... the other compiler flags
+#
+#
+#
+# ::
+#
+# <XPREFIX> = <PREFIX> for common case
+# <XPREFIX> = <PREFIX>_STATIC for static linking
+#
+#
+#
+# There are some special variables whose prefix depends on the count of
+# given modules. When there is only one module, <PREFIX> stays
+# unchanged. When there are multiple modules, the prefix will be
# changed to <PREFIX>_<MODNAME>:
-# <XPREFIX>_VERSION ... version of the module
-# <XPREFIX>_PREFIX ... prefix-directory of the module
-# <XPREFIX>_INCLUDEDIR ... include-dir of the module
-# <XPREFIX>_LIBDIR ... lib-dir of the module
#
-# <XPREFIX> = <PREFIX> when |MODULES| == 1, else
-# <XPREFIX> = <PREFIX>_<MODNAME>
+# ::
+#
+# <XPREFIX>_VERSION ... version of the module
+# <XPREFIX>_PREFIX ... prefix-directory of the module
+# <XPREFIX>_INCLUDEDIR ... include-dir of the module
+# <XPREFIX>_LIBDIR ... lib-dir of the module
+#
+#
+#
+# ::
+#
+# <XPREFIX> = <PREFIX> when |MODULES| == 1, else
+# <XPREFIX> = <PREFIX>_<MODNAME>
+#
+#
#
# A <MODULE> parameter can have the following formats:
-# {MODNAME} ... matches any version
-# {MODNAME}>={VERSION} ... at least version <VERSION> is required
-# {MODNAME}={VERSION} ... exactly version <VERSION> is required
-# {MODNAME}<={VERSION} ... modules must not be newer than <VERSION>
+#
+# ::
+#
+# {MODNAME} ... matches any version
+# {MODNAME}>={VERSION} ... at least version <VERSION> is required
+# {MODNAME}={VERSION} ... exactly version <VERSION> is required
+# {MODNAME}<={VERSION} ... modules must not be newer than <VERSION>
+#
+#
#
# Examples
-# pkg_check_modules (GLIB2 glib-2.0)
#
-# pkg_check_modules (GLIB2 glib-2.0>=2.10)
-# requires at least version 2.10 of glib2 and defines e.g.
-# GLIB2_VERSION=2.10.3
+# ::
+#
+# pkg_check_modules (GLIB2 glib-2.0)
+#
+#
+#
+# ::
+#
+# pkg_check_modules (GLIB2 glib-2.0>=2.10)
+# requires at least version 2.10 of glib2 and defines e.g.
+# GLIB2_VERSION=2.10.3
+#
+#
+#
+# ::
+#
+# pkg_check_modules (FOO glib-2.0>=2.10 gtk+-2.0)
+# requires both glib2 and gtk2, and defines e.g.
+# FOO_glib-2.0_VERSION=2.10.3
+# FOO_gtk+-2.0_VERSION=2.8.20
+#
+#
+#
+# ::
+#
+# pkg_check_modules (XRENDER REQUIRED xrender)
+# defines e.g.:
+# XRENDER_LIBRARIES=Xrender;X11
+# XRENDER_STATIC_LIBRARIES=Xrender;X11;pthread;Xau;Xdmcp
+#
#
-# pkg_check_modules (FOO glib-2.0>=2.10 gtk+-2.0)
-# requires both glib2 and gtk2, and defines e.g.
-# FOO_glib-2.0_VERSION=2.10.3
-# FOO_gtk+-2.0_VERSION=2.8.20
#
-# pkg_check_modules (XRENDER REQUIRED xrender)
-# defines e.g.:
-# XRENDER_LIBRARIES=Xrender;X11
-# XRENDER_STATIC_LIBRARIES=Xrender;X11;pthread;Xau;Xdmcp
+# ::
#
-# pkg_search_module (BAR libxml-2.0 libxml2 libxml>=2)
+# pkg_search_module (BAR libxml-2.0 libxml2 libxml>=2)
#=============================================================================
# Copyright 2006-2009 Kitware, Inc.
diff --git a/Modules/FindPostgreSQL.cmake b/Modules/FindPostgreSQL.cmake
index e3c898b984..f13dea87df 100644
--- a/Modules/FindPostgreSQL.cmake
+++ b/Modules/FindPostgreSQL.cmake
@@ -1,11 +1,19 @@
-# - Find the PostgreSQL installation.
-# In Windows, we make the assumption that, if the PostgreSQL files are installed, the default directory
-# will be C:\Program Files\PostgreSQL.
+#.rst:
+# FindPostgreSQL
+# --------------
+#
+# Find the PostgreSQL installation.
+#
+# In Windows, we make the assumption that, if the PostgreSQL files are
+# installed, the default directory will be C:\Program Files\PostgreSQL.
#
# This module defines
-# PostgreSQL_LIBRARIES - the PostgreSQL libraries needed for linking
-# PostgreSQL_INCLUDE_DIRS - the directories of the PostgreSQL headers
-# PostgreSQL_VERSION_STRING - the version of PostgreSQL found (since CMake 2.8.8)
+#
+# ::
+#
+# PostgreSQL_LIBRARIES - the PostgreSQL libraries needed for linking
+# PostgreSQL_INCLUDE_DIRS - the directories of the PostgreSQL headers
+# PostgreSQL_VERSION_STRING - the version of PostgreSQL found (since CMake 2.8.8)
#=============================================================================
# Copyright 2004-2009 Kitware, Inc.
diff --git a/Modules/FindProducer.cmake b/Modules/FindProducer.cmake
index 30990629b2..aef84eac71 100644
--- a/Modules/FindProducer.cmake
+++ b/Modules/FindProducer.cmake
@@ -1,27 +1,30 @@
-# Though Producer isn't directly part of OpenSceneGraph, its primary user
-# is OSG so I consider this part of the Findosg* suite used to find
-# OpenSceneGraph components. You'll notice that I accept OSGDIR as an
+#.rst:
+# FindProducer
+# ------------
+#
+#
+#
+# Though Producer isn't directly part of OpenSceneGraph, its primary
+# user is OSG so I consider this part of the Findosg* suite used to find
+# OpenSceneGraph components. You'll notice that I accept OSGDIR as an
# environment path.
#
-# Each component is separate and you must opt in to each module. You must
-# also opt into OpenGL (and OpenThreads?) as these
-# modules won't do it for you. This is to allow you control over your own
-# system piece by piece in case you need to opt out of certain components
-# or change the Find behavior for a particular module (perhaps because the
-# default FindOpenGL.cmake module doesn't work with your system as an
-# example).
+# Each component is separate and you must opt in to each module. You
+# must also opt into OpenGL (and OpenThreads?) as these modules won't do
+# it for you. This is to allow you control over your own system piece
+# by piece in case you need to opt out of certain components or change
+# the Find behavior for a particular module (perhaps because the default
+# FindOpenGL.cmake module doesn't work with your system as an example).
# If you want to use a more convenient module that includes everything,
-# use the FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
+# use the FindOpenSceneGraph.cmake instead of the Findosg*.cmake
+# modules.
#
-# Locate Producer
-# This module defines
-# PRODUCER_LIBRARY
-# PRODUCER_FOUND, if false, do not try to link to Producer
-# PRODUCER_INCLUDE_DIR, where to find the headers
+# Locate Producer This module defines PRODUCER_LIBRARY PRODUCER_FOUND,
+# if false, do not try to link to Producer PRODUCER_INCLUDE_DIR, where
+# to find the headers
#
-# $PRODUCER_DIR is an environment variable that would
-# correspond to the ./configure --prefix=$PRODUCER_DIR
-# used in building osg.
+# $PRODUCER_DIR is an environment variable that would correspond to the
+# ./configure --prefix=$PRODUCER_DIR used in building osg.
#
# Created by Eric Wing.
diff --git a/Modules/FindProtobuf.cmake b/Modules/FindProtobuf.cmake
index 2972198b35..9b120a605f 100644
--- a/Modules/FindProtobuf.cmake
+++ b/Modules/FindProtobuf.cmake
@@ -1,62 +1,127 @@
+#.rst:
+# FindProtobuf
+# ------------
+#
+#
+#
# Locate and configure the Google Protocol Buffers library.
#
# The following variables can be set and are optional:
#
-# PROTOBUF_SRC_ROOT_FOLDER - When compiling with MSVC, if this cache variable is set
-# the protobuf-default VS project build locations
-# (vsprojects/Debug & vsprojects/Release) will be searched
-# for libraries and binaries.
+# ::
+#
+# PROTOBUF_SRC_ROOT_FOLDER - When compiling with MSVC, if this cache variable is set
+# the protobuf-default VS project build locations
+# (vsprojects/Debug & vsprojects/Release) will be searched
+# for libraries and binaries.
+#
+#
+#
+# ::
+#
+# PROTOBUF_IMPORT_DIRS - List of additional directories to be searched for
+# imported .proto files. (New in CMake 2.8.8)
+#
#
-# PROTOBUF_IMPORT_DIRS - List of additional directories to be searched for
-# imported .proto files. (New in CMake 2.8.8)
#
# Defines the following variables:
#
-# PROTOBUF_FOUND - Found the Google Protocol Buffers library (libprotobuf & header files)
-# PROTOBUF_INCLUDE_DIRS - Include directories for Google Protocol Buffers
-# PROTOBUF_LIBRARIES - The protobuf libraries
+# ::
+#
+# PROTOBUF_FOUND - Found the Google Protocol Buffers library (libprotobuf & header files)
+# PROTOBUF_INCLUDE_DIRS - Include directories for Google Protocol Buffers
+# PROTOBUF_LIBRARIES - The protobuf libraries
+#
# [New in CMake 2.8.5]
-# PROTOBUF_PROTOC_LIBRARIES - The protoc libraries
-# PROTOBUF_LITE_LIBRARIES - The protobuf-lite libraries
+#
+# ::
+#
+# PROTOBUF_PROTOC_LIBRARIES - The protoc libraries
+# PROTOBUF_LITE_LIBRARIES - The protobuf-lite libraries
+#
+#
#
# The following cache variables are also available to set or use:
-# PROTOBUF_LIBRARY - The protobuf library
-# PROTOBUF_PROTOC_LIBRARY - The protoc library
-# PROTOBUF_INCLUDE_DIR - The include directory for protocol buffers
-# PROTOBUF_PROTOC_EXECUTABLE - The protoc compiler
+#
+# ::
+#
+# PROTOBUF_LIBRARY - The protobuf library
+# PROTOBUF_PROTOC_LIBRARY - The protoc library
+# PROTOBUF_INCLUDE_DIR - The include directory for protocol buffers
+# PROTOBUF_PROTOC_EXECUTABLE - The protoc compiler
+#
# [New in CMake 2.8.5]
-# PROTOBUF_LIBRARY_DEBUG - The protobuf library (debug)
-# PROTOBUF_PROTOC_LIBRARY_DEBUG - The protoc library (debug)
-# PROTOBUF_LITE_LIBRARY - The protobuf lite library
-# PROTOBUF_LITE_LIBRARY_DEBUG - The protobuf lite library (debug)
#
-# ====================================================================
-# Example:
+# ::
+#
+# PROTOBUF_LIBRARY_DEBUG - The protobuf library (debug)
+# PROTOBUF_PROTOC_LIBRARY_DEBUG - The protoc library (debug)
+# PROTOBUF_LITE_LIBRARY - The protobuf lite library
+# PROTOBUF_LITE_LIBRARY_DEBUG - The protobuf lite library (debug)
+#
+#
+#
+# ::
+#
+# ====================================================================
+# Example:
+#
+#
+#
+# ::
+#
+# find_package(Protobuf REQUIRED)
+# include_directories(${PROTOBUF_INCLUDE_DIRS})
+#
+#
+#
+# ::
+#
+# include_directories(${CMAKE_CURRENT_BINARY_DIR})
+# PROTOBUF_GENERATE_CPP(PROTO_SRCS PROTO_HDRS foo.proto)
+# add_executable(bar bar.cc ${PROTO_SRCS} ${PROTO_HDRS})
+# target_link_libraries(bar ${PROTOBUF_LIBRARIES})
#
-# find_package(Protobuf REQUIRED)
-# include_directories(${PROTOBUF_INCLUDE_DIRS})
#
-# include_directories(${CMAKE_CURRENT_BINARY_DIR})
-# PROTOBUF_GENERATE_CPP(PROTO_SRCS PROTO_HDRS foo.proto)
-# add_executable(bar bar.cc ${PROTO_SRCS} ${PROTO_HDRS})
-# target_link_libraries(bar ${PROTOBUF_LIBRARIES})
#
# NOTE: You may need to link against pthreads, depending
-# on the platform.
#
-# NOTE: The PROTOBUF_GENERATE_CPP macro & add_executable() or add_library()
-# calls only work properly within the same directory.
+# ::
+#
+# on the platform.
+#
+#
+#
+# NOTE: The PROTOBUF_GENERATE_CPP macro & add_executable() or
+# add_library()
+#
+# ::
+#
+# calls only work properly within the same directory.
+#
+#
+#
+# ::
+#
+# ====================================================================
+#
#
-# ====================================================================
#
# PROTOBUF_GENERATE_CPP (public function)
-# SRCS = Variable to define with autogenerated
-# source files
-# HDRS = Variable to define with autogenerated
-# header files
-# ARGN = proto files
#
-# ====================================================================
+# ::
+#
+# SRCS = Variable to define with autogenerated
+# source files
+# HDRS = Variable to define with autogenerated
+# header files
+# ARGN = proto files
+#
+#
+#
+# ::
+#
+# ====================================================================
#=============================================================================
diff --git a/Modules/FindPythonInterp.cmake b/Modules/FindPythonInterp.cmake
index b6b7897519..6126a48f62 100644
--- a/Modules/FindPythonInterp.cmake
+++ b/Modules/FindPythonInterp.cmake
@@ -1,18 +1,32 @@
-# - Find python interpreter
-# This module finds if Python interpreter is installed and determines where the
-# executables are. This code sets the following variables:
+#.rst:
+# FindPythonInterp
+# ----------------
#
-# PYTHONINTERP_FOUND - Was the Python executable found
-# PYTHON_EXECUTABLE - path to the Python interpreter
+# Find python interpreter
#
-# PYTHON_VERSION_STRING - Python version found e.g. 2.5.2
-# PYTHON_VERSION_MAJOR - Python major version found e.g. 2
-# PYTHON_VERSION_MINOR - Python minor version found e.g. 5
-# PYTHON_VERSION_PATCH - Python patch version found e.g. 2
+# This module finds if Python interpreter is installed and determines
+# where the executables are. This code sets the following variables:
#
-# The Python_ADDITIONAL_VERSIONS variable can be used to specify a list of
-# version numbers that should be taken into account when searching for Python.
-# You need to set this variable before calling find_package(PythonInterp).
+# ::
+#
+# PYTHONINTERP_FOUND - Was the Python executable found
+# PYTHON_EXECUTABLE - path to the Python interpreter
+#
+#
+#
+# ::
+#
+# PYTHON_VERSION_STRING - Python version found e.g. 2.5.2
+# PYTHON_VERSION_MAJOR - Python major version found e.g. 2
+# PYTHON_VERSION_MINOR - Python minor version found e.g. 5
+# PYTHON_VERSION_PATCH - Python patch version found e.g. 2
+#
+#
+#
+# The Python_ADDITIONAL_VERSIONS variable can be used to specify a list
+# of version numbers that should be taken into account when searching
+# for Python. You need to set this variable before calling
+# find_package(PythonInterp).
#=============================================================================
# Copyright 2005-2010 Kitware, Inc.
diff --git a/Modules/FindPythonLibs.cmake b/Modules/FindPythonLibs.cmake
index 8356ed94d4..0749efcfb4 100644
--- a/Modules/FindPythonLibs.cmake
+++ b/Modules/FindPythonLibs.cmake
@@ -1,23 +1,36 @@
-# - Find python libraries
+#.rst:
+# FindPythonLibs
+# --------------
+#
+# Find python libraries
+#
# This module finds if Python is installed and determines where the
-# include files and libraries are. It also determines what the name of
-# the library is. This code sets the following variables:
+# include files and libraries are. It also determines what the name of
+# the library is. This code sets the following variables:
+#
+# ::
+#
+# PYTHONLIBS_FOUND - have the Python libs been found
+# PYTHON_LIBRARIES - path to the python library
+# PYTHON_INCLUDE_PATH - path to where Python.h is found (deprecated)
+# PYTHON_INCLUDE_DIRS - path to where Python.h is found
+# PYTHON_DEBUG_LIBRARIES - path to the debug library (deprecated)
+# PYTHONLIBS_VERSION_STRING - version of the Python libs found (since CMake 2.8.8)
+#
+#
+#
+# The Python_ADDITIONAL_VERSIONS variable can be used to specify a list
+# of version numbers that should be taken into account when searching
+# for Python. You need to set this variable before calling
+# find_package(PythonLibs).
#
-# PYTHONLIBS_FOUND - have the Python libs been found
-# PYTHON_LIBRARIES - path to the python library
-# PYTHON_INCLUDE_PATH - path to where Python.h is found (deprecated)
-# PYTHON_INCLUDE_DIRS - path to where Python.h is found
-# PYTHON_DEBUG_LIBRARIES - path to the debug library (deprecated)
-# PYTHONLIBS_VERSION_STRING - version of the Python libs found (since CMake 2.8.8)
+# If you'd like to specify the installation of Python to use, you should
+# modify the following cache variables:
#
-# The Python_ADDITIONAL_VERSIONS variable can be used to specify a list of
-# version numbers that should be taken into account when searching for Python.
-# You need to set this variable before calling find_package(PythonLibs).
+# ::
#
-# If you'd like to specify the installation of Python to use, you should modify
-# the following cache variables:
-# PYTHON_LIBRARY - path to the python library
-# PYTHON_INCLUDE_DIR - path to where Python.h is found
+# PYTHON_LIBRARY - path to the python library
+# PYTHON_INCLUDE_DIR - path to where Python.h is found
#=============================================================================
# Copyright 2001-2009 Kitware, Inc.
diff --git a/Modules/FindQt.cmake b/Modules/FindQt.cmake
index 54b7c6f97d..e893c7a502 100644
--- a/Modules/FindQt.cmake
+++ b/Modules/FindQt.cmake
@@ -1,21 +1,31 @@
-# - Searches for all installed versions of Qt.
+#.rst:
+# FindQt
+# ------
+#
+# Searches for all installed versions of Qt.
+#
# This should only be used if your project can work with multiple
-# versions of Qt. If not, you should just directly use FindQt4 or FindQt3.
-# If multiple versions of Qt are found on the machine, then
-# The user must set the option DESIRED_QT_VERSION to the version
-# they want to use. If only one version of qt is found on the machine,
-# then the DESIRED_QT_VERSION is set to that version and the
-# matching FindQt3 or FindQt4 module is included.
-# Once the user sets DESIRED_QT_VERSION, then the FindQt3 or FindQt4 module
-# is included.
+# versions of Qt. If not, you should just directly use FindQt4 or
+# FindQt3. If multiple versions of Qt are found on the machine, then
+# The user must set the option DESIRED_QT_VERSION to the version they
+# want to use. If only one version of qt is found on the machine, then
+# the DESIRED_QT_VERSION is set to that version and the matching FindQt3
+# or FindQt4 module is included. Once the user sets DESIRED_QT_VERSION,
+# then the FindQt3 or FindQt4 module is included.
+#
+# ::
+#
+# QT_REQUIRED if this is set to TRUE then if CMake can
+# not find Qt4 or Qt3 an error is raised
+# and a message is sent to the user.
+#
+#
#
-# QT_REQUIRED if this is set to TRUE then if CMake can
-# not find Qt4 or Qt3 an error is raised
-# and a message is sent to the user.
+# ::
#
-# DESIRED_QT_VERSION OPTION is created
-# QT4_INSTALLED is set to TRUE if qt4 is found.
-# QT3_INSTALLED is set to TRUE if qt3 is found.
+# DESIRED_QT_VERSION OPTION is created
+# QT4_INSTALLED is set to TRUE if qt4 is found.
+# QT3_INSTALLED is set to TRUE if qt3 is found.
#=============================================================================
# Copyright 2001-2009 Kitware, Inc.
diff --git a/Modules/FindQt3.cmake b/Modules/FindQt3.cmake
index 4fc8e406c3..6cd12c60c7 100644
--- a/Modules/FindQt3.cmake
+++ b/Modules/FindQt3.cmake
@@ -1,20 +1,34 @@
-# - Locate Qt include paths and libraries
+#.rst:
+# FindQt3
+# -------
+#
+# Locate Qt include paths and libraries
+#
# This module defines:
-# QT_INCLUDE_DIR - where to find qt.h, etc.
-# QT_LIBRARIES - the libraries to link against to use Qt.
-# QT_DEFINITIONS - definitions to use when
-# compiling code that uses Qt.
-# QT_FOUND - If false, don't try to use Qt.
-# QT_VERSION_STRING - the version of Qt found
#
-# If you need the multithreaded version of Qt, set QT_MT_REQUIRED to TRUE
+# ::
+#
+# QT_INCLUDE_DIR - where to find qt.h, etc.
+# QT_LIBRARIES - the libraries to link against to use Qt.
+# QT_DEFINITIONS - definitions to use when
+# compiling code that uses Qt.
+# QT_FOUND - If false, don't try to use Qt.
+# QT_VERSION_STRING - the version of Qt found
+#
+#
+#
+# If you need the multithreaded version of Qt, set QT_MT_REQUIRED to
+# TRUE
#
# Also defined, but not for general use are:
-# QT_MOC_EXECUTABLE, where to find the moc tool.
-# QT_UIC_EXECUTABLE, where to find the uic tool.
-# QT_QT_LIBRARY, where to find the Qt library.
-# QT_QTMAIN_LIBRARY, where to find the qtmain
-# library. This is only required by Qt3 on Windows.
+#
+# ::
+#
+# QT_MOC_EXECUTABLE, where to find the moc tool.
+# QT_UIC_EXECUTABLE, where to find the uic tool.
+# QT_QT_LIBRARY, where to find the Qt library.
+# QT_QTMAIN_LIBRARY, where to find the qtmain
+# library. This is only required by Qt3 on Windows.
# These are around for backwards compatibility
# they will be set
diff --git a/Modules/FindQt4.cmake b/Modules/FindQt4.cmake
index 1d17ba3aee..46a03550b3 100644
--- a/Modules/FindQt4.cmake
+++ b/Modules/FindQt4.cmake
@@ -1,349 +1,511 @@
-# - Find Qt 4
-# This module can be used to find Qt4.
-# The most important issue is that the Qt4 qmake is available via the system path.
-# This qmake is then used to detect basically everything else.
-# This module defines a number of key variables and macros.
-# The variable QT_USE_FILE is set which is the path to a CMake file that can be included
-# to compile Qt 4 applications and libraries. It sets up the compilation
-# environment for include directories, preprocessor defines and populates a
+#.rst:
+# FindQt4
+# -------
+#
+# Find Qt 4
+#
+# This module can be used to find Qt4. The most important issue is that
+# the Qt4 qmake is available via the system path. This qmake is then
+# used to detect basically everything else. This module defines a
+# number of key variables and macros. The variable QT_USE_FILE is set
+# which is the path to a CMake file that can be included to compile Qt 4
+# applications and libraries. It sets up the compilation environment
+# for include directories, preprocessor defines and populates a
# QT_LIBRARIES variable.
#
# Typical usage could be something like:
-# find_package(Qt4 4.4.3 REQUIRED QtCore QtGui QtXml)
-# include(${QT_USE_FILE})
-# add_executable(myexe main.cpp)
-# target_link_libraries(myexe ${QT_LIBRARIES})
-#
-# The minimum required version can be specified using the standard find_package()-syntax
-# (see example above).
-# For compatibility with older versions of FindQt4.cmake it is also possible to
-# set the variable QT_MIN_VERSION to the minimum required version of Qt4 before the
-# find_package(Qt4) command.
-# If both are used, the version used in the find_package() command overrides the
-# one from QT_MIN_VERSION.
-#
-# When using the components argument, QT_USE_QT* variables are automatically set
-# for the QT_USE_FILE to pick up. If one wishes to manually set them, the
-# available ones to set include:
-# QT_DONT_USE_QTCORE
-# QT_DONT_USE_QTGUI
-# QT_USE_QT3SUPPORT
-# QT_USE_QTASSISTANT
-# QT_USE_QAXCONTAINER
-# QT_USE_QAXSERVER
-# QT_USE_QTDESIGNER
-# QT_USE_QTMOTIF
-# QT_USE_QTMAIN
-# QT_USE_QTMULTIMEDIA
-# QT_USE_QTNETWORK
-# QT_USE_QTNSPLUGIN
-# QT_USE_QTOPENGL
-# QT_USE_QTSQL
-# QT_USE_QTXML
-# QT_USE_QTSVG
-# QT_USE_QTTEST
-# QT_USE_QTUITOOLS
-# QT_USE_QTDBUS
-# QT_USE_QTSCRIPT
-# QT_USE_QTASSISTANTCLIENT
-# QT_USE_QTHELP
-# QT_USE_QTWEBKIT
-# QT_USE_QTXMLPATTERNS
-# QT_USE_PHONON
-# QT_USE_QTSCRIPTTOOLS
-# QT_USE_QTDECLARATIVE
-#
-# QT_USE_IMPORTED_TARGETS
-# If this variable is set to TRUE, FindQt4.cmake will create imported
-# library targets for the various Qt libraries and set the
-# library variables like QT_QTCORE_LIBRARY to point at these imported
-# targets instead of the library file on disk. This provides much better
-# handling of the release and debug versions of the Qt libraries and is
-# also always backwards compatible, except for the case that dependencies
-# of libraries are exported, these will then also list the names of the
-# imported targets as dependency and not the file location on disk. This
-# is much more flexible, but requires that FindQt4.cmake is executed before
-# such an exported dependency file is processed.
-#
-# Note that if using IMPORTED targets, the qtmain.lib static library is
-# automatically linked on Windows. To disable that globally, set the
-# QT4_NO_LINK_QTMAIN variable before finding Qt4. To disable that for a
-# particular executable, set the QT4_NO_LINK_QTMAIN target property to
-# True on the executable.
-#
-# QT_INCLUDE_DIRS_NO_SYSTEM
-# If this variable is set to TRUE, the Qt include directories
-# in the QT_USE_FILE will NOT have the SYSTEM keyword set.
-#
-# There are also some files that need processing by some Qt tools such as moc
-# and uic. Listed below are macros that may be used to process those files.
-#
-# macro QT4_WRAP_CPP(outfiles inputfile ... OPTIONS ...)
-# create moc code from a list of files containing Qt class with
-# the Q_OBJECT declaration. Per-directory preprocessor definitions
-# are also added. Options may be given to moc, such as those found
-# when executing "moc -help".
-#
-# macro QT4_WRAP_UI(outfiles inputfile ... OPTIONS ...)
-# create code from a list of Qt designer ui files.
-# Options may be given to uic, such as those found
-# when executing "uic -help"
-#
-# macro QT4_ADD_RESOURCES(outfiles inputfile ... OPTIONS ...)
-# create code from a list of Qt resource files.
-# Options may be given to rcc, such as those found
-# when executing "rcc -help"
-#
-# macro QT4_GENERATE_MOC(inputfile outputfile )
-# creates a rule to run moc on infile and create outfile.
-# Use this if for some reason QT4_WRAP_CPP() isn't appropriate, e.g.
-# because you need a custom filename for the moc file or something similar.
-#
-# macro QT4_AUTOMOC(sourcefile1 sourcefile2 ... )
-# The qt4_automoc macro is obsolete. Use the CMAKE_AUTOMOC feature instead.
-# This macro is still experimental.
-# It can be used to have moc automatically handled.
-# So if you have the files foo.h and foo.cpp, and in foo.h a
-# a class uses the Q_OBJECT macro, moc has to run on it. If you don't
-# want to use QT4_WRAP_CPP() (which is reliable and mature), you can insert
-# #include "foo.moc"
-# in foo.cpp and then give foo.cpp as argument to QT4_AUTOMOC(). This will the
-# scan all listed files at cmake-time for such included moc files and if it finds
-# them cause a rule to be generated to run moc at build time on the
-# accompanying header file foo.h.
-# If a source file has the SKIP_AUTOMOC property set it will be ignored by this macro.
-#
-# You should have a look on the AUTOMOC property for targets to achieve the same results.
-#
-# macro QT4_ADD_DBUS_INTERFACE(outfiles interface basename)
-# Create the interface header and implementation files with the
-# given basename from the given interface xml file and add it to
-# the list of sources.
-#
-# You can pass additional parameters to the qdbusxml2cpp call by setting
-# properties on the input file:
-#
-# INCLUDE the given file will be included in the generate interface header
-#
-# CLASSNAME the generated class is named accordingly
-#
-# NO_NAMESPACE the generated class is not wrapped in a namespace
-#
-# macro QT4_ADD_DBUS_INTERFACES(outfiles inputfile ... )
-# Create the interface header and implementation files
-# for all listed interface xml files.
-# The basename will be automatically determined from the name of the xml file.
-#
-# The source file properties described for QT4_ADD_DBUS_INTERFACE also apply here.
-#
-# macro QT4_ADD_DBUS_ADAPTOR(outfiles xmlfile parentheader parentclassname [basename] [classname])
-# create a dbus adaptor (header and implementation file) from the xml file
-# describing the interface, and add it to the list of sources. The adaptor
-# forwards the calls to a parent class, defined in parentheader and named
-# parentclassname. The name of the generated files will be
-# <basename>adaptor.{cpp,h} where basename defaults to the basename of the xml file.
-# If <classname> is provided, then it will be used as the classname of the
-# adaptor itself.
-#
-# macro QT4_GENERATE_DBUS_INTERFACE( header [interfacename] OPTIONS ...)
-# generate the xml interface file from the given header.
-# If the optional argument interfacename is omitted, the name of the
-# interface file is constructed from the basename of the header with
-# the suffix .xml appended.
-# Options may be given to qdbuscpp2xml, such as those found when executing "qdbuscpp2xml --help"
-#
-# macro QT4_CREATE_TRANSLATION( qm_files directories ... sources ...
-# ts_files ... OPTIONS ...)
-# out: qm_files
-# in: directories sources ts_files
-# options: flags to pass to lupdate, such as -extensions to specify
-# extensions for a directory scan.
-# generates commands to create .ts (vie lupdate) and .qm
-# (via lrelease) - files from directories and/or sources. The ts files are
-# created and/or updated in the source tree (unless given with full paths).
-# The qm files are generated in the build tree.
-# Updating the translations can be done by adding the qm_files
-# to the source list of your library/executable, so they are
-# always updated, or by adding a custom target to control when
-# they get updated/generated.
-#
-# macro QT4_ADD_TRANSLATION( qm_files ts_files ... )
-# out: qm_files
-# in: ts_files
-# generates commands to create .qm from .ts - files. The generated
-# filenames can be found in qm_files. The ts_files
-# must exist and are not updated in any way.
+#
+# ::
+#
+# find_package(Qt4 4.4.3 REQUIRED QtCore QtGui QtXml)
+# include(${QT_USE_FILE})
+# add_executable(myexe main.cpp)
+# target_link_libraries(myexe ${QT_LIBRARIES})
+#
+#
+#
+# The minimum required version can be specified using the standard
+# find_package()-syntax (see example above). For compatibility with
+# older versions of FindQt4.cmake it is also possible to set the
+# variable QT_MIN_VERSION to the minimum required version of Qt4 before
+# the find_package(Qt4) command. If both are used, the version used in
+# the find_package() command overrides the one from QT_MIN_VERSION.
+#
+# When using the components argument, QT_USE_QT* variables are
+# automatically set for the QT_USE_FILE to pick up. If one wishes to
+# manually set them, the available ones to set include:
+#
+# ::
+#
+# QT_DONT_USE_QTCORE
+# QT_DONT_USE_QTGUI
+# QT_USE_QT3SUPPORT
+# QT_USE_QTASSISTANT
+# QT_USE_QAXCONTAINER
+# QT_USE_QAXSERVER
+# QT_USE_QTDESIGNER
+# QT_USE_QTMOTIF
+# QT_USE_QTMAIN
+# QT_USE_QTMULTIMEDIA
+# QT_USE_QTNETWORK
+# QT_USE_QTNSPLUGIN
+# QT_USE_QTOPENGL
+# QT_USE_QTSQL
+# QT_USE_QTXML
+# QT_USE_QTSVG
+# QT_USE_QTTEST
+# QT_USE_QTUITOOLS
+# QT_USE_QTDBUS
+# QT_USE_QTSCRIPT
+# QT_USE_QTASSISTANTCLIENT
+# QT_USE_QTHELP
+# QT_USE_QTWEBKIT
+# QT_USE_QTXMLPATTERNS
+# QT_USE_PHONON
+# QT_USE_QTSCRIPTTOOLS
+# QT_USE_QTDECLARATIVE
+#
+#
+#
+# ::
+#
+# QT_USE_IMPORTED_TARGETS
+# If this variable is set to TRUE, FindQt4.cmake will create imported
+# library targets for the various Qt libraries and set the
+# library variables like QT_QTCORE_LIBRARY to point at these imported
+# targets instead of the library file on disk. This provides much better
+# handling of the release and debug versions of the Qt libraries and is
+# also always backwards compatible, except for the case that dependencies
+# of libraries are exported, these will then also list the names of the
+# imported targets as dependency and not the file location on disk. This
+# is much more flexible, but requires that FindQt4.cmake is executed before
+# such an exported dependency file is processed.
+#
+#
+#
+# ::
+#
+# Note that if using IMPORTED targets, the qtmain.lib static library is
+# automatically linked on Windows. To disable that globally, set the
+# QT4_NO_LINK_QTMAIN variable before finding Qt4. To disable that for a
+# particular executable, set the QT4_NO_LINK_QTMAIN target property to
+# True on the executable.
+#
+#
+#
+# ::
+#
+# QT_INCLUDE_DIRS_NO_SYSTEM
+# If this variable is set to TRUE, the Qt include directories
+# in the QT_USE_FILE will NOT have the SYSTEM keyword set.
+#
+#
+#
+# There are also some files that need processing by some Qt tools such
+# as moc and uic. Listed below are macros that may be used to process
+# those files.
+#
+# ::
+#
+# macro QT4_WRAP_CPP(outfiles inputfile ... OPTIONS ...)
+# create moc code from a list of files containing Qt class with
+# the Q_OBJECT declaration. Per-directory preprocessor definitions
+# are also added. Options may be given to moc, such as those found
+# when executing "moc -help".
+#
+#
+#
+# ::
+#
+# macro QT4_WRAP_UI(outfiles inputfile ... OPTIONS ...)
+# create code from a list of Qt designer ui files.
+# Options may be given to uic, such as those found
+# when executing "uic -help"
+#
+#
+#
+# ::
+#
+# macro QT4_ADD_RESOURCES(outfiles inputfile ... OPTIONS ...)
+# create code from a list of Qt resource files.
+# Options may be given to rcc, such as those found
+# when executing "rcc -help"
+#
+#
+#
+# ::
+#
+# macro QT4_GENERATE_MOC(inputfile outputfile )
+# creates a rule to run moc on infile and create outfile.
+# Use this if for some reason QT4_WRAP_CPP() isn't appropriate, e.g.
+# because you need a custom filename for the moc file or something similar.
+#
+#
+#
+# ::
+#
+# macro QT4_AUTOMOC(sourcefile1 sourcefile2 ... )
+# The qt4_automoc macro is obsolete. Use the CMAKE_AUTOMOC feature instead.
+# This macro is still experimental.
+# It can be used to have moc automatically handled.
+# So if you have the files foo.h and foo.cpp, and in foo.h a
+# a class uses the Q_OBJECT macro, moc has to run on it. If you don't
+# want to use QT4_WRAP_CPP() (which is reliable and mature), you can insert
+# #include "foo.moc"
+# in foo.cpp and then give foo.cpp as argument to QT4_AUTOMOC(). This will the
+# scan all listed files at cmake-time for such included moc files and if it finds
+# them cause a rule to be generated to run moc at build time on the
+# accompanying header file foo.h.
+# If a source file has the SKIP_AUTOMOC property set it will be ignored by this macro.
+#
+#
+#
+# ::
+#
+# You should have a look on the AUTOMOC property for targets to achieve the same results.
+#
+#
+#
+# ::
+#
+# macro QT4_ADD_DBUS_INTERFACE(outfiles interface basename)
+# Create the interface header and implementation files with the
+# given basename from the given interface xml file and add it to
+# the list of sources.
+#
+#
+#
+# ::
+#
+# You can pass additional parameters to the qdbusxml2cpp call by setting
+# properties on the input file:
+#
+#
+#
+# ::
+#
+# INCLUDE the given file will be included in the generate interface header
+#
+#
+#
+# ::
+#
+# CLASSNAME the generated class is named accordingly
+#
+#
+#
+# ::
+#
+# NO_NAMESPACE the generated class is not wrapped in a namespace
+#
+#
+#
+# ::
+#
+# macro QT4_ADD_DBUS_INTERFACES(outfiles inputfile ... )
+# Create the interface header and implementation files
+# for all listed interface xml files.
+# The basename will be automatically determined from the name of the xml file.
+#
+#
+#
+# ::
+#
+# The source file properties described for QT4_ADD_DBUS_INTERFACE also apply here.
+#
+#
+#
+# ::
+#
+# macro QT4_ADD_DBUS_ADAPTOR(outfiles xmlfile parentheader parentclassname [basename] [classname])
+# create a dbus adaptor (header and implementation file) from the xml file
+# describing the interface, and add it to the list of sources. The adaptor
+# forwards the calls to a parent class, defined in parentheader and named
+# parentclassname. The name of the generated files will be
+# <basename>adaptor.{cpp,h} where basename defaults to the basename of the xml file.
+# If <classname> is provided, then it will be used as the classname of the
+# adaptor itself.
+#
+#
+#
+# ::
+#
+# macro QT4_GENERATE_DBUS_INTERFACE( header [interfacename] OPTIONS ...)
+# generate the xml interface file from the given header.
+# If the optional argument interfacename is omitted, the name of the
+# interface file is constructed from the basename of the header with
+# the suffix .xml appended.
+# Options may be given to qdbuscpp2xml, such as those found when executing "qdbuscpp2xml --help"
+#
+#
+#
+# ::
+#
+# macro QT4_CREATE_TRANSLATION( qm_files directories ... sources ...
+# ts_files ... OPTIONS ...)
+# out: qm_files
+# in: directories sources ts_files
+# options: flags to pass to lupdate, such as -extensions to specify
+# extensions for a directory scan.
+# generates commands to create .ts (vie lupdate) and .qm
+# (via lrelease) - files from directories and/or sources. The ts files are
+# created and/or updated in the source tree (unless given with full paths).
+# The qm files are generated in the build tree.
+# Updating the translations can be done by adding the qm_files
+# to the source list of your library/executable, so they are
+# always updated, or by adding a custom target to control when
+# they get updated/generated.
+#
+#
+#
+# ::
+#
+# macro QT4_ADD_TRANSLATION( qm_files ts_files ... )
+# out: qm_files
+# in: ts_files
+# generates commands to create .qm from .ts - files. The generated
+# filenames can be found in qm_files. The ts_files
+# must exist and are not updated in any way.
+#
+#
#
# function QT4_USE_MODULES( target [link_type] modules...)
-# This function is obsolete. Use target_link_libraries with IMPORTED targets instead.
-# Make <target> use the <modules> from Qt. Using a Qt module means
-# to link to the library, add the relevant include directories for the module,
-# and add the relevant compiler defines for using the module.
-# Modules are roughly equivalent to components of Qt4, so usage would be
-# something like:
-# qt4_use_modules(myexe Core Gui Declarative)
-# to use QtCore, QtGui and QtDeclarative. The optional <link_type> argument can
-# be specified as either LINK_PUBLIC or LINK_PRIVATE to specify the same argument
-# to the target_link_libraries call.
-#
-#
-# Below is a detailed list of variables that FindQt4.cmake sets.
-# QT_FOUND If false, don't try to use Qt.
-# Qt4_FOUND If false, don't try to use Qt 4.
-# QT4_FOUND If false, don't try to use Qt 4. This variable is for compatibility only.
-#
-# QT_VERSION_MAJOR The major version of Qt found.
-# QT_VERSION_MINOR The minor version of Qt found.
-# QT_VERSION_PATCH The patch version of Qt found.
-#
-# QT_EDITION Set to the edition of Qt (i.e. DesktopLight)
-# QT_EDITION_DESKTOPLIGHT True if QT_EDITION == DesktopLight
-# QT_QTCORE_FOUND True if QtCore was found.
-# QT_QTGUI_FOUND True if QtGui was found.
-# QT_QT3SUPPORT_FOUND True if Qt3Support was found.
-# QT_QTASSISTANT_FOUND True if QtAssistant was found.
-# QT_QTASSISTANTCLIENT_FOUND True if QtAssistantClient was found.
-# QT_QAXCONTAINER_FOUND True if QAxContainer was found (Windows only).
-# QT_QAXSERVER_FOUND True if QAxServer was found (Windows only).
-# QT_QTDBUS_FOUND True if QtDBus was found.
-# QT_QTDESIGNER_FOUND True if QtDesigner was found.
-# QT_QTDESIGNERCOMPONENTS True if QtDesignerComponents was found.
-# QT_QTHELP_FOUND True if QtHelp was found.
-# QT_QTMOTIF_FOUND True if QtMotif was found.
-# QT_QTMULTIMEDIA_FOUND True if QtMultimedia was found (since Qt 4.6.0).
-# QT_QTNETWORK_FOUND True if QtNetwork was found.
-# QT_QTNSPLUGIN_FOUND True if QtNsPlugin was found.
-# QT_QTOPENGL_FOUND True if QtOpenGL was found.
-# QT_QTSQL_FOUND True if QtSql was found.
-# QT_QTSVG_FOUND True if QtSvg was found.
-# QT_QTSCRIPT_FOUND True if QtScript was found.
-# QT_QTSCRIPTTOOLS_FOUND True if QtScriptTools was found.
-# QT_QTTEST_FOUND True if QtTest was found.
-# QT_QTUITOOLS_FOUND True if QtUiTools was found.
-# QT_QTWEBKIT_FOUND True if QtWebKit was found.
-# QT_QTXML_FOUND True if QtXml was found.
-# QT_QTXMLPATTERNS_FOUND True if QtXmlPatterns was found.
-# QT_PHONON_FOUND True if phonon was found.
-# QT_QTDECLARATIVE_FOUND True if QtDeclarative was found.
-#
-# QT_MAC_USE_COCOA For Mac OS X, its whether Cocoa or Carbon is used.
-# In general, this should not be used, but its useful
-# when having platform specific code.
-#
-# QT_DEFINITIONS Definitions to use when compiling code that uses Qt.
-# You do not need to use this if you include QT_USE_FILE.
-# The QT_USE_FILE will also define QT_DEBUG and QT_NO_DEBUG
-# to fit your current build type. Those are not contained
-# in QT_DEFINITIONS.
-#
-# QT_INCLUDES List of paths to all include directories of
-# Qt4 QT_INCLUDE_DIR and QT_QTCORE_INCLUDE_DIR are
-# always in this variable even if NOTFOUND,
-# all other INCLUDE_DIRS are
-# only added if they are found.
-# You do not need to use this if you include QT_USE_FILE.
-#
-#
-# Include directories for the Qt modules are listed here.
-# You do not need to use these variables if you include QT_USE_FILE.
-#
-# QT_INCLUDE_DIR Path to "include" of Qt4
-# QT_QT3SUPPORT_INCLUDE_DIR Path to "include/Qt3Support"
-# QT_QTASSISTANT_INCLUDE_DIR Path to "include/QtAssistant"
-# QT_QTASSISTANTCLIENT_INCLUDE_DIR Path to "include/QtAssistant"
-# QT_QAXCONTAINER_INCLUDE_DIR Path to "include/ActiveQt" (Windows only)
-# QT_QAXSERVER_INCLUDE_DIR Path to "include/ActiveQt" (Windows only)
-# QT_QTCORE_INCLUDE_DIR Path to "include/QtCore"
-# QT_QTDBUS_INCLUDE_DIR Path to "include/QtDBus"
-# QT_QTDESIGNER_INCLUDE_DIR Path to "include/QtDesigner"
-# QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR Path to "include/QtDesigner"
-# QT_QTGUI_INCLUDE_DIR Path to "include/QtGui"
-# QT_QTHELP_INCLUDE_DIR Path to "include/QtHelp"
-# QT_QTMOTIF_INCLUDE_DIR Path to "include/QtMotif"
-# QT_QTMULTIMEDIA_INCLUDE_DIR Path to "include/QtMultimedia"
-# QT_QTNETWORK_INCLUDE_DIR Path to "include/QtNetwork"
-# QT_QTNSPLUGIN_INCLUDE_DIR Path to "include/QtNsPlugin"
-# QT_QTOPENGL_INCLUDE_DIR Path to "include/QtOpenGL"
-# QT_QTSCRIPT_INCLUDE_DIR Path to "include/QtScript"
-# QT_QTSQL_INCLUDE_DIR Path to "include/QtSql"
-# QT_QTSVG_INCLUDE_DIR Path to "include/QtSvg"
-# QT_QTTEST_INCLUDE_DIR Path to "include/QtTest"
-# QT_QTWEBKIT_INCLUDE_DIR Path to "include/QtWebKit"
-# QT_QTXML_INCLUDE_DIR Path to "include/QtXml"
-# QT_QTXMLPATTERNS_INCLUDE_DIR Path to "include/QtXmlPatterns"
-# QT_PHONON_INCLUDE_DIR Path to "include/phonon"
-# QT_QTSCRIPTTOOLS_INCLUDE_DIR Path to "include/QtScriptTools"
-# QT_QTDECLARATIVE_INCLUDE_DIR Path to "include/QtDeclarative"
-#
-# QT_BINARY_DIR Path to "bin" of Qt4
-# QT_LIBRARY_DIR Path to "lib" of Qt4
-# QT_PLUGINS_DIR Path to "plugins" for Qt4
-# QT_TRANSLATIONS_DIR Path to "translations" of Qt4
-# QT_IMPORTS_DIR Path to "imports" of Qt4
-# QT_DOC_DIR Path to "doc" of Qt4
-# QT_MKSPECS_DIR Path to "mkspecs" of Qt4
-#
-#
-# The Qt toolkit may contain both debug and release libraries.
-# In that case, the following library variables will contain both.
-# You do not need to use these variables if you include QT_USE_FILE,
-# and use QT_LIBRARIES.
-#
-# QT_QT3SUPPORT_LIBRARY The Qt3Support library
-# QT_QTASSISTANT_LIBRARY The QtAssistant library
-# QT_QTASSISTANTCLIENT_LIBRARY The QtAssistantClient library
-# QT_QAXCONTAINER_LIBRARY The QAxContainer library (Windows only)
-# QT_QAXSERVER_LIBRARY The QAxServer library (Windows only)
-# QT_QTCORE_LIBRARY The QtCore library
-# QT_QTDBUS_LIBRARY The QtDBus library
-# QT_QTDESIGNER_LIBRARY The QtDesigner library
-# QT_QTDESIGNERCOMPONENTS_LIBRARY The QtDesignerComponents library
-# QT_QTGUI_LIBRARY The QtGui library
-# QT_QTHELP_LIBRARY The QtHelp library
-# QT_QTMOTIF_LIBRARY The QtMotif library
-# QT_QTMULTIMEDIA_LIBRARY The QtMultimedia library
-# QT_QTNETWORK_LIBRARY The QtNetwork library
-# QT_QTNSPLUGIN_LIBRARY The QtNsPLugin library
-# QT_QTOPENGL_LIBRARY The QtOpenGL library
-# QT_QTSCRIPT_LIBRARY The QtScript library
-# QT_QTSQL_LIBRARY The QtSql library
-# QT_QTSVG_LIBRARY The QtSvg library
-# QT_QTTEST_LIBRARY The QtTest library
-# QT_QTUITOOLS_LIBRARY The QtUiTools library
-# QT_QTWEBKIT_LIBRARY The QtWebKit library
-# QT_QTXML_LIBRARY The QtXml library
-# QT_QTXMLPATTERNS_LIBRARY The QtXmlPatterns library
-# QT_QTMAIN_LIBRARY The qtmain library for Windows
-# QT_PHONON_LIBRARY The phonon library
-# QT_QTSCRIPTTOOLS_LIBRARY The QtScriptTools library
-#
-# The QtDeclarative library: QT_QTDECLARATIVE_LIBRARY
+#
+# ::
+#
+# This function is obsolete. Use target_link_libraries with IMPORTED targets instead.
+# Make <target> use the <modules> from Qt. Using a Qt module means
+# to link to the library, add the relevant include directories for the module,
+# and add the relevant compiler defines for using the module.
+# Modules are roughly equivalent to components of Qt4, so usage would be
+# something like:
+# qt4_use_modules(myexe Core Gui Declarative)
+# to use QtCore, QtGui and QtDeclarative. The optional <link_type> argument can
+# be specified as either LINK_PUBLIC or LINK_PRIVATE to specify the same argument
+# to the target_link_libraries call.
+#
+#
+#
+#
+#
+# ::
+#
+# Below is a detailed list of variables that FindQt4.cmake sets.
+# QT_FOUND If false, don't try to use Qt.
+# Qt4_FOUND If false, don't try to use Qt 4.
+# QT4_FOUND If false, don't try to use Qt 4. This variable is for compatibility only.
+#
+#
+#
+# ::
+#
+# QT_VERSION_MAJOR The major version of Qt found.
+# QT_VERSION_MINOR The minor version of Qt found.
+# QT_VERSION_PATCH The patch version of Qt found.
+#
+#
+#
+# ::
+#
+# QT_EDITION Set to the edition of Qt (i.e. DesktopLight)
+# QT_EDITION_DESKTOPLIGHT True if QT_EDITION == DesktopLight
+# QT_QTCORE_FOUND True if QtCore was found.
+# QT_QTGUI_FOUND True if QtGui was found.
+# QT_QT3SUPPORT_FOUND True if Qt3Support was found.
+# QT_QTASSISTANT_FOUND True if QtAssistant was found.
+# QT_QTASSISTANTCLIENT_FOUND True if QtAssistantClient was found.
+# QT_QAXCONTAINER_FOUND True if QAxContainer was found (Windows only).
+# QT_QAXSERVER_FOUND True if QAxServer was found (Windows only).
+# QT_QTDBUS_FOUND True if QtDBus was found.
+# QT_QTDESIGNER_FOUND True if QtDesigner was found.
+# QT_QTDESIGNERCOMPONENTS True if QtDesignerComponents was found.
+# QT_QTHELP_FOUND True if QtHelp was found.
+# QT_QTMOTIF_FOUND True if QtMotif was found.
+# QT_QTMULTIMEDIA_FOUND True if QtMultimedia was found (since Qt 4.6.0).
+# QT_QTNETWORK_FOUND True if QtNetwork was found.
+# QT_QTNSPLUGIN_FOUND True if QtNsPlugin was found.
+# QT_QTOPENGL_FOUND True if QtOpenGL was found.
+# QT_QTSQL_FOUND True if QtSql was found.
+# QT_QTSVG_FOUND True if QtSvg was found.
+# QT_QTSCRIPT_FOUND True if QtScript was found.
+# QT_QTSCRIPTTOOLS_FOUND True if QtScriptTools was found.
+# QT_QTTEST_FOUND True if QtTest was found.
+# QT_QTUITOOLS_FOUND True if QtUiTools was found.
+# QT_QTWEBKIT_FOUND True if QtWebKit was found.
+# QT_QTXML_FOUND True if QtXml was found.
+# QT_QTXMLPATTERNS_FOUND True if QtXmlPatterns was found.
+# QT_PHONON_FOUND True if phonon was found.
+# QT_QTDECLARATIVE_FOUND True if QtDeclarative was found.
+#
+#
+#
+# ::
+#
+# QT_MAC_USE_COCOA For Mac OS X, its whether Cocoa or Carbon is used.
+# In general, this should not be used, but its useful
+# when having platform specific code.
+#
+#
+#
+# ::
+#
+# QT_DEFINITIONS Definitions to use when compiling code that uses Qt.
+# You do not need to use this if you include QT_USE_FILE.
+# The QT_USE_FILE will also define QT_DEBUG and QT_NO_DEBUG
+# to fit your current build type. Those are not contained
+# in QT_DEFINITIONS.
+#
+#
+#
+# ::
+#
+# QT_INCLUDES List of paths to all include directories of
+# Qt4 QT_INCLUDE_DIR and QT_QTCORE_INCLUDE_DIR are
+# always in this variable even if NOTFOUND,
+# all other INCLUDE_DIRS are
+# only added if they are found.
+# You do not need to use this if you include QT_USE_FILE.
+#
+#
+#
+#
+#
+# ::
+#
+# Include directories for the Qt modules are listed here.
+# You do not need to use these variables if you include QT_USE_FILE.
+#
+#
+#
+# ::
+#
+# QT_INCLUDE_DIR Path to "include" of Qt4
+# QT_QT3SUPPORT_INCLUDE_DIR Path to "include/Qt3Support"
+# QT_QTASSISTANT_INCLUDE_DIR Path to "include/QtAssistant"
+# QT_QTASSISTANTCLIENT_INCLUDE_DIR Path to "include/QtAssistant"
+# QT_QAXCONTAINER_INCLUDE_DIR Path to "include/ActiveQt" (Windows only)
+# QT_QAXSERVER_INCLUDE_DIR Path to "include/ActiveQt" (Windows only)
+# QT_QTCORE_INCLUDE_DIR Path to "include/QtCore"
+# QT_QTDBUS_INCLUDE_DIR Path to "include/QtDBus"
+# QT_QTDESIGNER_INCLUDE_DIR Path to "include/QtDesigner"
+# QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR Path to "include/QtDesigner"
+# QT_QTGUI_INCLUDE_DIR Path to "include/QtGui"
+# QT_QTHELP_INCLUDE_DIR Path to "include/QtHelp"
+# QT_QTMOTIF_INCLUDE_DIR Path to "include/QtMotif"
+# QT_QTMULTIMEDIA_INCLUDE_DIR Path to "include/QtMultimedia"
+# QT_QTNETWORK_INCLUDE_DIR Path to "include/QtNetwork"
+# QT_QTNSPLUGIN_INCLUDE_DIR Path to "include/QtNsPlugin"
+# QT_QTOPENGL_INCLUDE_DIR Path to "include/QtOpenGL"
+# QT_QTSCRIPT_INCLUDE_DIR Path to "include/QtScript"
+# QT_QTSQL_INCLUDE_DIR Path to "include/QtSql"
+# QT_QTSVG_INCLUDE_DIR Path to "include/QtSvg"
+# QT_QTTEST_INCLUDE_DIR Path to "include/QtTest"
+# QT_QTWEBKIT_INCLUDE_DIR Path to "include/QtWebKit"
+# QT_QTXML_INCLUDE_DIR Path to "include/QtXml"
+# QT_QTXMLPATTERNS_INCLUDE_DIR Path to "include/QtXmlPatterns"
+# QT_PHONON_INCLUDE_DIR Path to "include/phonon"
+# QT_QTSCRIPTTOOLS_INCLUDE_DIR Path to "include/QtScriptTools"
+# QT_QTDECLARATIVE_INCLUDE_DIR Path to "include/QtDeclarative"
+#
+#
+#
+# ::
+#
+# QT_BINARY_DIR Path to "bin" of Qt4
+# QT_LIBRARY_DIR Path to "lib" of Qt4
+# QT_PLUGINS_DIR Path to "plugins" for Qt4
+# QT_TRANSLATIONS_DIR Path to "translations" of Qt4
+# QT_IMPORTS_DIR Path to "imports" of Qt4
+# QT_DOC_DIR Path to "doc" of Qt4
+# QT_MKSPECS_DIR Path to "mkspecs" of Qt4
+#
+#
+#
+#
+#
+# The Qt toolkit may contain both debug and release libraries. In that
+# case, the following library variables will contain both. You do not
+# need to use these variables if you include QT_USE_FILE, and use
+# QT_LIBRARIES.
+#
+# ::
+#
+# QT_QT3SUPPORT_LIBRARY The Qt3Support library
+# QT_QTASSISTANT_LIBRARY The QtAssistant library
+# QT_QTASSISTANTCLIENT_LIBRARY The QtAssistantClient library
+# QT_QAXCONTAINER_LIBRARY The QAxContainer library (Windows only)
+# QT_QAXSERVER_LIBRARY The QAxServer library (Windows only)
+# QT_QTCORE_LIBRARY The QtCore library
+# QT_QTDBUS_LIBRARY The QtDBus library
+# QT_QTDESIGNER_LIBRARY The QtDesigner library
+# QT_QTDESIGNERCOMPONENTS_LIBRARY The QtDesignerComponents library
+# QT_QTGUI_LIBRARY The QtGui library
+# QT_QTHELP_LIBRARY The QtHelp library
+# QT_QTMOTIF_LIBRARY The QtMotif library
+# QT_QTMULTIMEDIA_LIBRARY The QtMultimedia library
+# QT_QTNETWORK_LIBRARY The QtNetwork library
+# QT_QTNSPLUGIN_LIBRARY The QtNsPLugin library
+# QT_QTOPENGL_LIBRARY The QtOpenGL library
+# QT_QTSCRIPT_LIBRARY The QtScript library
+# QT_QTSQL_LIBRARY The QtSql library
+# QT_QTSVG_LIBRARY The QtSvg library
+# QT_QTTEST_LIBRARY The QtTest library
+# QT_QTUITOOLS_LIBRARY The QtUiTools library
+# QT_QTWEBKIT_LIBRARY The QtWebKit library
+# QT_QTXML_LIBRARY The QtXml library
+# QT_QTXMLPATTERNS_LIBRARY The QtXmlPatterns library
+# QT_QTMAIN_LIBRARY The qtmain library for Windows
+# QT_PHONON_LIBRARY The phonon library
+# QT_QTSCRIPTTOOLS_LIBRARY The QtScriptTools library
+#
+#
+#
+# The QtDeclarative library: QT_QTDECLARATIVE_LIBRARY
#
# also defined, but NOT for general use are
-# QT_MOC_EXECUTABLE Where to find the moc tool.
-# QT_UIC_EXECUTABLE Where to find the uic tool.
-# QT_UIC3_EXECUTABLE Where to find the uic3 tool.
-# QT_RCC_EXECUTABLE Where to find the rcc tool
-# QT_DBUSCPP2XML_EXECUTABLE Where to find the qdbuscpp2xml tool.
-# QT_DBUSXML2CPP_EXECUTABLE Where to find the qdbusxml2cpp tool.
-# QT_LUPDATE_EXECUTABLE Where to find the lupdate tool.
-# QT_LRELEASE_EXECUTABLE Where to find the lrelease tool.
-# QT_QCOLLECTIONGENERATOR_EXECUTABLE Where to find the qcollectiongenerator tool.
-# QT_DESIGNER_EXECUTABLE Where to find the Qt designer tool.
-# QT_LINGUIST_EXECUTABLE Where to find the Qt linguist tool.
-#
-#
-# These are around for backwards compatibility
-# they will be set
-# QT_WRAP_CPP Set true if QT_MOC_EXECUTABLE is found
-# QT_WRAP_UI Set true if QT_UIC_EXECUTABLE is found
-#
-# These variables do _NOT_ have any effect anymore (compared to FindQt.cmake)
-# QT_MT_REQUIRED Qt4 is now always multithreaded
-#
-# These variables are set to "" Because Qt structure changed
-# (They make no sense in Qt4)
-# QT_QT_LIBRARY Qt-Library is now split
+#
+# ::
+#
+# QT_MOC_EXECUTABLE Where to find the moc tool.
+# QT_UIC_EXECUTABLE Where to find the uic tool.
+# QT_UIC3_EXECUTABLE Where to find the uic3 tool.
+# QT_RCC_EXECUTABLE Where to find the rcc tool
+# QT_DBUSCPP2XML_EXECUTABLE Where to find the qdbuscpp2xml tool.
+# QT_DBUSXML2CPP_EXECUTABLE Where to find the qdbusxml2cpp tool.
+# QT_LUPDATE_EXECUTABLE Where to find the lupdate tool.
+# QT_LRELEASE_EXECUTABLE Where to find the lrelease tool.
+# QT_QCOLLECTIONGENERATOR_EXECUTABLE Where to find the qcollectiongenerator tool.
+# QT_DESIGNER_EXECUTABLE Where to find the Qt designer tool.
+# QT_LINGUIST_EXECUTABLE Where to find the Qt linguist tool.
+#
+#
+#
+#
+#
+# These are around for backwards compatibility they will be set
+#
+# ::
+#
+# QT_WRAP_CPP Set true if QT_MOC_EXECUTABLE is found
+# QT_WRAP_UI Set true if QT_UIC_EXECUTABLE is found
+#
+#
+#
+# These variables do _NOT_ have any effect anymore (compared to
+# FindQt.cmake)
+#
+# ::
+#
+# QT_MT_REQUIRED Qt4 is now always multithreaded
+#
+#
+#
+# These variables are set to "" Because Qt structure changed (They make
+# no sense in Qt4)
+#
+# ::
+#
+# QT_QT_LIBRARY Qt-Library is now split
#=============================================================================
# Copyright 2005-2009 Kitware, Inc.
diff --git a/Modules/FindQuickTime.cmake b/Modules/FindQuickTime.cmake
index 42a0dce77f..27792691b9 100644
--- a/Modules/FindQuickTime.cmake
+++ b/Modules/FindQuickTime.cmake
@@ -1,11 +1,15 @@
-# Locate QuickTime
-# This module defines
-# QUICKTIME_LIBRARY
+#.rst:
+# FindQuickTime
+# -------------
+#
+#
+#
+# Locate QuickTime This module defines QUICKTIME_LIBRARY
# QUICKTIME_FOUND, if false, do not try to link to gdal
# QUICKTIME_INCLUDE_DIR, where to find the headers
#
-# $QUICKTIME_DIR is an environment variable that would
-# correspond to the ./configure --prefix=$QUICKTIME_DIR
+# $QUICKTIME_DIR is an environment variable that would correspond to the
+# ./configure --prefix=$QUICKTIME_DIR
#
# Created by Eric Wing.
diff --git a/Modules/FindRTI.cmake b/Modules/FindRTI.cmake
index 60990b767e..1aad0a80ab 100644
--- a/Modules/FindRTI.cmake
+++ b/Modules/FindRTI.cmake
@@ -1,17 +1,32 @@
-# - Try to find M&S HLA RTI libraries
-# This module finds if any HLA RTI is installed and locates the standard RTI
-# include files and libraries.
+#.rst:
+# FindRTI
+# -------
+#
+# Try to find M&S HLA RTI libraries
+#
+# This module finds if any HLA RTI is installed and locates the standard
+# RTI include files and libraries.
+#
+# RTI is a simulation infrastructure standardized by IEEE and SISO. It
+# has a well defined C++ API that assures that simulation applications
+# are independent on a particular RTI implementation.
+#
+# ::
+#
+# http://en.wikipedia.org/wiki/Run-Time_Infrastructure_(simulation)
+#
#
-# RTI is a simulation infrastructure standardized by IEEE and SISO. It has a
-# well defined C++ API that assures that simulation applications are
-# independent on a particular RTI implementation.
-# http://en.wikipedia.org/wiki/Run-Time_Infrastructure_(simulation)
#
# This code sets the following variables:
-# RTI_INCLUDE_DIR = the directory where RTI includes file are found
-# RTI_LIBRARIES = The libraries to link against to use RTI
-# RTI_DEFINITIONS = -DRTI_USES_STD_FSTREAM
-# RTI_FOUND = Set to FALSE if any HLA RTI was not found
+#
+# ::
+#
+# RTI_INCLUDE_DIR = the directory where RTI includes file are found
+# RTI_LIBRARIES = The libraries to link against to use RTI
+# RTI_DEFINITIONS = -DRTI_USES_STD_FSTREAM
+# RTI_FOUND = Set to FALSE if any HLA RTI was not found
+#
+#
#
# Report problems to <certi-devel@nongnu.org>
diff --git a/Modules/FindRuby.cmake b/Modules/FindRuby.cmake
index c02158f137..9d9383d2a0 100644
--- a/Modules/FindRuby.cmake
+++ b/Modules/FindRuby.cmake
@@ -1,20 +1,31 @@
-# - Find Ruby
-# This module finds if Ruby is installed and determines where the include files
-# and libraries are. Ruby 1.8 and 1.9 are supported.
+#.rst:
+# FindRuby
+# --------
+#
+# Find Ruby
+#
+# This module finds if Ruby is installed and determines where the
+# include files and libraries are. Ruby 1.8 and 1.9 are supported.
#
# The minimum required version of Ruby can be specified using the
-# standard syntax, e.g. find_package(Ruby 1.8)
+# standard syntax, e.g. find_package(Ruby 1.8)
+#
+# It also determines what the name of the library is. This code sets
+# the following variables:
+#
+# ::
+#
+# RUBY_EXECUTABLE = full path to the ruby binary
+# RUBY_INCLUDE_DIRS = include dirs to be used when using the ruby library
+# RUBY_LIBRARY = full path to the ruby library
+# RUBY_VERSION = the version of ruby which was found, e.g. "1.8.7"
+# RUBY_FOUND = set to true if ruby ws found successfully
+#
#
-# It also determines what the name of the library is. This
-# code sets the following variables:
#
-# RUBY_EXECUTABLE = full path to the ruby binary
-# RUBY_INCLUDE_DIRS = include dirs to be used when using the ruby library
-# RUBY_LIBRARY = full path to the ruby library
-# RUBY_VERSION = the version of ruby which was found, e.g. "1.8.7"
-# RUBY_FOUND = set to true if ruby ws found successfully
+# ::
#
-# RUBY_INCLUDE_PATH = same as RUBY_INCLUDE_DIRS, only provided for compatibility reasons, don't use it
+# RUBY_INCLUDE_PATH = same as RUBY_INCLUDE_DIRS, only provided for compatibility reasons, don't use it
#=============================================================================
# Copyright 2004-2009 Kitware, Inc.
diff --git a/Modules/FindSDL.cmake b/Modules/FindSDL.cmake
index a4f12ba3be..6d418fd323 100644
--- a/Modules/FindSDL.cmake
+++ b/Modules/FindSDL.cmake
@@ -1,57 +1,72 @@
-# - Locate SDL library
+#.rst:
+# FindSDL
+# -------
+#
+# Locate SDL library
+#
# This module defines
-# SDL_LIBRARY, the name of the library to link against
-# SDL_FOUND, if false, do not try to link to SDL
-# SDL_INCLUDE_DIR, where to find SDL.h
-# SDL_VERSION_STRING, human-readable string containing the version of SDL
+#
+# ::
+#
+# SDL_LIBRARY, the name of the library to link against
+# SDL_FOUND, if false, do not try to link to SDL
+# SDL_INCLUDE_DIR, where to find SDL.h
+# SDL_VERSION_STRING, human-readable string containing the version of SDL
+#
+#
#
# This module responds to the the flag:
-# SDL_BUILDING_LIBRARY
-# If this is defined, then no SDL_main will be linked in because
-# only applications need main().
-# Otherwise, it is assumed you are building an application and this
-# module will attempt to locate and set the the proper link flags
-# as part of the returned SDL_LIBRARY variable.
+#
+# ::
+#
+# SDL_BUILDING_LIBRARY
+# If this is defined, then no SDL_main will be linked in because
+# only applications need main().
+# Otherwise, it is assumed you are building an application and this
+# module will attempt to locate and set the the proper link flags
+# as part of the returned SDL_LIBRARY variable.
+#
+#
#
# Don't forget to include SDLmain.h and SDLmain.m your project for the
-# OS X framework based version. (Other versions link to -lSDLmain which
+# OS X framework based version. (Other versions link to -lSDLmain which
# this module will try to find on your behalf.) Also for OS X, this
# module will automatically add the -framework Cocoa on your behalf.
#
#
-# Additional Note: If you see an empty SDL_LIBRARY_TEMP in your configuration
-# and no SDL_LIBRARY, it means CMake did not find your SDL library
-# (SDL.dll, libsdl.so, SDL.framework, etc).
-# Set SDL_LIBRARY_TEMP to point to your SDL library, and configure again.
-# Similarly, if you see an empty SDLMAIN_LIBRARY, you should set this value
-# as appropriate. These values are used to generate the final SDL_LIBRARY
-# variable, but when these values are unset, SDL_LIBRARY does not get created.
+#
+# Additional Note: If you see an empty SDL_LIBRARY_TEMP in your
+# configuration and no SDL_LIBRARY, it means CMake did not find your SDL
+# library (SDL.dll, libsdl.so, SDL.framework, etc). Set
+# SDL_LIBRARY_TEMP to point to your SDL library, and configure again.
+# Similarly, if you see an empty SDLMAIN_LIBRARY, you should set this
+# value as appropriate. These values are used to generate the final
+# SDL_LIBRARY variable, but when these values are unset, SDL_LIBRARY
+# does not get created.
+#
#
#
-# $SDLDIR is an environment variable that would
-# correspond to the ./configure --prefix=$SDLDIR
-# used in building SDL.
-# l.e.galup 9-20-02
+# $SDLDIR is an environment variable that would correspond to the
+# ./configure --prefix=$SDLDIR used in building SDL. l.e.galup 9-20-02
#
-# Modified by Eric Wing.
-# Added code to assist with automated building by using environmental variables
-# and providing a more controlled/consistent search behavior.
-# Added new modifications to recognize OS X frameworks and
-# additional Unix paths (FreeBSD, etc).
-# Also corrected the header search path to follow "proper" SDL guidelines.
-# Added a search for SDLmain which is needed by some platforms.
-# Added a search for threads which is needed by some platforms.
-# Added needed compile switches for MinGW.
+# Modified by Eric Wing. Added code to assist with automated building
+# by using environmental variables and providing a more
+# controlled/consistent search behavior. Added new modifications to
+# recognize OS X frameworks and additional Unix paths (FreeBSD, etc).
+# Also corrected the header search path to follow "proper" SDL
+# guidelines. Added a search for SDLmain which is needed by some
+# platforms. Added a search for threads which is needed by some
+# platforms. Added needed compile switches for MinGW.
#
# On OSX, this will prefer the Framework version (if found) over others.
-# People will have to manually change the cache values of
-# SDL_LIBRARY to override this selection or set the CMake environment
+# People will have to manually change the cache values of SDL_LIBRARY to
+# override this selection or set the CMake environment
# CMAKE_INCLUDE_PATH to modify the search paths.
#
# Note that the header path has changed from SDL/SDL.h to just SDL.h
-# This needed to change because "proper" SDL convention
-# is #include "SDL.h", not <SDL/SDL.h>. This is done for portability
-# reasons because not all systems place things in SDL/ (see FreeBSD).
+# This needed to change because "proper" SDL convention is #include
+# "SDL.h", not <SDL/SDL.h>. This is done for portability reasons
+# because not all systems place things in SDL/ (see FreeBSD).
#=============================================================================
# Copyright 2003-2009 Kitware, Inc.
diff --git a/Modules/FindSDL_image.cmake b/Modules/FindSDL_image.cmake
index 30d74acfbf..2ec6e50235 100644
--- a/Modules/FindSDL_image.cmake
+++ b/Modules/FindSDL_image.cmake
@@ -1,20 +1,34 @@
-# - Locate SDL_image library
+#.rst:
+# FindSDL_image
+# -------------
+#
+# Locate SDL_image library
+#
# This module defines:
-# SDL_IMAGE_LIBRARIES, the name of the library to link against
-# SDL_IMAGE_INCLUDE_DIRS, where to find the headers
-# SDL_IMAGE_FOUND, if false, do not try to link against
-# SDL_IMAGE_VERSION_STRING - human-readable string containing the version of SDL_image
+#
+# ::
+#
+# SDL_IMAGE_LIBRARIES, the name of the library to link against
+# SDL_IMAGE_INCLUDE_DIRS, where to find the headers
+# SDL_IMAGE_FOUND, if false, do not try to link against
+# SDL_IMAGE_VERSION_STRING - human-readable string containing the version of SDL_image
+#
+#
#
# For backward compatiblity the following variables are also set:
-# SDLIMAGE_LIBRARY (same value as SDL_IMAGE_LIBRARIES)
-# SDLIMAGE_INCLUDE_DIR (same value as SDL_IMAGE_INCLUDE_DIRS)
-# SDLIMAGE_FOUND (same value as SDL_IMAGE_FOUND)
#
-# $SDLDIR is an environment variable that would
-# correspond to the ./configure --prefix=$SDLDIR
-# used in building SDL.
+# ::
+#
+# SDLIMAGE_LIBRARY (same value as SDL_IMAGE_LIBRARIES)
+# SDLIMAGE_INCLUDE_DIR (same value as SDL_IMAGE_INCLUDE_DIRS)
+# SDLIMAGE_FOUND (same value as SDL_IMAGE_FOUND)
+#
+#
+#
+# $SDLDIR is an environment variable that would correspond to the
+# ./configure --prefix=$SDLDIR used in building SDL.
#
-# Created by Eric Wing. This was influenced by the FindSDL.cmake
+# Created by Eric Wing. This was influenced by the FindSDL.cmake
# module, but with modifications to recognize OS X frameworks and
# additional Unix paths (FreeBSD, etc).
diff --git a/Modules/FindSDL_mixer.cmake b/Modules/FindSDL_mixer.cmake
index 8ca7cc33ca..d17c907688 100644
--- a/Modules/FindSDL_mixer.cmake
+++ b/Modules/FindSDL_mixer.cmake
@@ -1,20 +1,34 @@
-# - Locate SDL_mixer library
+#.rst:
+# FindSDL_mixer
+# -------------
+#
+# Locate SDL_mixer library
+#
# This module defines:
-# SDL_MIXER_LIBRARIES, the name of the library to link against
-# SDL_MIXER_INCLUDE_DIRS, where to find the headers
-# SDL_MIXER_FOUND, if false, do not try to link against
-# SDL_MIXER_VERSION_STRING - human-readable string containing the version of SDL_mixer
+#
+# ::
+#
+# SDL_MIXER_LIBRARIES, the name of the library to link against
+# SDL_MIXER_INCLUDE_DIRS, where to find the headers
+# SDL_MIXER_FOUND, if false, do not try to link against
+# SDL_MIXER_VERSION_STRING - human-readable string containing the version of SDL_mixer
+#
+#
#
# For backward compatiblity the following variables are also set:
-# SDLMIXER_LIBRARY (same value as SDL_MIXER_LIBRARIES)
-# SDLMIXER_INCLUDE_DIR (same value as SDL_MIXER_INCLUDE_DIRS)
-# SDLMIXER_FOUND (same value as SDL_MIXER_FOUND)
#
-# $SDLDIR is an environment variable that would
-# correspond to the ./configure --prefix=$SDLDIR
-# used in building SDL.
+# ::
+#
+# SDLMIXER_LIBRARY (same value as SDL_MIXER_LIBRARIES)
+# SDLMIXER_INCLUDE_DIR (same value as SDL_MIXER_INCLUDE_DIRS)
+# SDLMIXER_FOUND (same value as SDL_MIXER_FOUND)
+#
+#
+#
+# $SDLDIR is an environment variable that would correspond to the
+# ./configure --prefix=$SDLDIR used in building SDL.
#
-# Created by Eric Wing. This was influenced by the FindSDL.cmake
+# Created by Eric Wing. This was influenced by the FindSDL.cmake
# module, but with modifications to recognize OS X frameworks and
# additional Unix paths (FreeBSD, etc).
diff --git a/Modules/FindSDL_net.cmake b/Modules/FindSDL_net.cmake
index ca707af8d3..c54518976f 100644
--- a/Modules/FindSDL_net.cmake
+++ b/Modules/FindSDL_net.cmake
@@ -1,20 +1,34 @@
-# - Locate SDL_net library
+#.rst:
+# FindSDL_net
+# -----------
+#
+# Locate SDL_net library
+#
# This module defines:
-# SDL_NET_LIBRARIES, the name of the library to link against
-# SDL_NET_INCLUDE_DIRS, where to find the headers
-# SDL_NET_FOUND, if false, do not try to link against
-# SDL_NET_VERSION_STRING - human-readable string containing the version of SDL_net
+#
+# ::
+#
+# SDL_NET_LIBRARIES, the name of the library to link against
+# SDL_NET_INCLUDE_DIRS, where to find the headers
+# SDL_NET_FOUND, if false, do not try to link against
+# SDL_NET_VERSION_STRING - human-readable string containing the version of SDL_net
+#
+#
#
# For backward compatiblity the following variables are also set:
-# SDLNET_LIBRARY (same value as SDL_NET_LIBRARIES)
-# SDLNET_INCLUDE_DIR (same value as SDL_NET_INCLUDE_DIRS)
-# SDLNET_FOUND (same value as SDL_NET_FOUND)
#
-# $SDLDIR is an environment variable that would
-# correspond to the ./configure --prefix=$SDLDIR
-# used in building SDL.
+# ::
+#
+# SDLNET_LIBRARY (same value as SDL_NET_LIBRARIES)
+# SDLNET_INCLUDE_DIR (same value as SDL_NET_INCLUDE_DIRS)
+# SDLNET_FOUND (same value as SDL_NET_FOUND)
+#
+#
+#
+# $SDLDIR is an environment variable that would correspond to the
+# ./configure --prefix=$SDLDIR used in building SDL.
#
-# Created by Eric Wing. This was influenced by the FindSDL.cmake
+# Created by Eric Wing. This was influenced by the FindSDL.cmake
# module, but with modifications to recognize OS X frameworks and
# additional Unix paths (FreeBSD, etc).
diff --git a/Modules/FindSDL_sound.cmake b/Modules/FindSDL_sound.cmake
index efd26580b1..863699af6b 100644
--- a/Modules/FindSDL_sound.cmake
+++ b/Modules/FindSDL_sound.cmake
@@ -1,59 +1,80 @@
-# - Locates the SDL_sound library
+#.rst:
+# FindSDL_sound
+# -------------
#
-# This module depends on SDL being found and
-# must be called AFTER FindSDL.cmake is called.
+# Locates the SDL_sound library
+#
+#
+#
+# This module depends on SDL being found and must be called AFTER
+# FindSDL.cmake is called.
#
# This module defines
-# SDL_SOUND_INCLUDE_DIR, where to find SDL_sound.h
-# SDL_SOUND_FOUND, if false, do not try to link to SDL_sound
-# SDL_SOUND_LIBRARIES, this contains the list of libraries that you need
-# to link against. This is a read-only variable and is marked INTERNAL.
-# SDL_SOUND_EXTRAS, this is an optional variable for you to add your own
-# flags to SDL_SOUND_LIBRARIES. This is prepended to SDL_SOUND_LIBRARIES.
-# This is available mostly for cases this module failed to anticipate for
-# and you must add additional flags. This is marked as ADVANCED.
-# SDL_SOUND_VERSION_STRING, human-readable string containing the version of SDL_sound
+#
+# ::
+#
+# SDL_SOUND_INCLUDE_DIR, where to find SDL_sound.h
+# SDL_SOUND_FOUND, if false, do not try to link to SDL_sound
+# SDL_SOUND_LIBRARIES, this contains the list of libraries that you need
+# to link against. This is a read-only variable and is marked INTERNAL.
+# SDL_SOUND_EXTRAS, this is an optional variable for you to add your own
+# flags to SDL_SOUND_LIBRARIES. This is prepended to SDL_SOUND_LIBRARIES.
+# This is available mostly for cases this module failed to anticipate for
+# and you must add additional flags. This is marked as ADVANCED.
+# SDL_SOUND_VERSION_STRING, human-readable string containing the version of SDL_sound
+#
+#
#
# This module also defines (but you shouldn't need to use directly)
-# SDL_SOUND_LIBRARY, the name of just the SDL_sound library you would link
-# against. Use SDL_SOUND_LIBRARIES for you link instructions and not this one.
+#
+# ::
+#
+# SDL_SOUND_LIBRARY, the name of just the SDL_sound library you would link
+# against. Use SDL_SOUND_LIBRARIES for you link instructions and not this one.
+#
# And might define the following as needed
-# MIKMOD_LIBRARY
-# MODPLUG_LIBRARY
-# OGG_LIBRARY
-# VORBIS_LIBRARY
-# SMPEG_LIBRARY
-# FLAC_LIBRARY
-# SPEEX_LIBRARY
#
-# Typically, you should not use these variables directly, and you should use
-# SDL_SOUND_LIBRARIES which contains SDL_SOUND_LIBRARY and the other audio libraries
-# (if needed) to successfully compile on your system.
+# ::
+#
+# MIKMOD_LIBRARY
+# MODPLUG_LIBRARY
+# OGG_LIBRARY
+# VORBIS_LIBRARY
+# SMPEG_LIBRARY
+# FLAC_LIBRARY
+# SPEEX_LIBRARY
+#
+#
+#
+# Typically, you should not use these variables directly, and you should
+# use SDL_SOUND_LIBRARIES which contains SDL_SOUND_LIBRARY and the other
+# audio libraries (if needed) to successfully compile on your system.
#
-# Created by Eric Wing.
-# This module is a bit more complicated than the other FindSDL* family modules.
-# The reason is that SDL_sound can be compiled in a large variety of different ways
-# which are independent of platform. SDL_sound may dynamically link against other 3rd
-# party libraries to get additional codec support, such as Ogg Vorbis, SMPEG, ModPlug,
-# MikMod, FLAC, Speex, and potentially others.
-# Under some circumstances which I don't fully understand,
-# there seems to be a requirement
-# that dependent libraries of libraries you use must also be explicitly
-# linked against in order to successfully compile. SDL_sound does not currently
-# have any system in place to know how it was compiled.
-# So this CMake module does the hard work in trying to discover which 3rd party
-# libraries are required for building (if any).
-# This module uses a brute force approach to create a test program that uses SDL_sound,
-# and then tries to build it. If the build fails, it parses the error output for
-# known symbol names to figure out which libraries are needed.
+# Created by Eric Wing. This module is a bit more complicated than the
+# other FindSDL* family modules. The reason is that SDL_sound can be
+# compiled in a large variety of different ways which are independent of
+# platform. SDL_sound may dynamically link against other 3rd party
+# libraries to get additional codec support, such as Ogg Vorbis, SMPEG,
+# ModPlug, MikMod, FLAC, Speex, and potentially others. Under some
+# circumstances which I don't fully understand, there seems to be a
+# requirement that dependent libraries of libraries you use must also be
+# explicitly linked against in order to successfully compile. SDL_sound
+# does not currently have any system in place to know how it was
+# compiled. So this CMake module does the hard work in trying to
+# discover which 3rd party libraries are required for building (if any).
+# This module uses a brute force approach to create a test program that
+# uses SDL_sound, and then tries to build it. If the build fails, it
+# parses the error output for known symbol names to figure out which
+# libraries are needed.
#
-# Responds to the $SDLDIR and $SDLSOUNDDIR environmental variable that would
-# correspond to the ./configure --prefix=$SDLDIR used in building SDL.
+# Responds to the $SDLDIR and $SDLSOUNDDIR environmental variable that
+# would correspond to the ./configure --prefix=$SDLDIR used in building
+# SDL.
#
# On OSX, this will prefer the Framework version (if found) over others.
-# People will have to manually change the cache values of
-# SDL_LIBRARY to override this selectionor set the CMake environment
-# CMAKE_INCLUDE_PATH to modify the search paths.
+# People will have to manually change the cache values of SDL_LIBRARY to
+# override this selectionor set the CMake environment CMAKE_INCLUDE_PATH
+# to modify the search paths.
#=============================================================================
# Copyright 2005-2009 Kitware, Inc.
diff --git a/Modules/FindSDL_ttf.cmake b/Modules/FindSDL_ttf.cmake
index bb0ca91475..8f72b1a41c 100644
--- a/Modules/FindSDL_ttf.cmake
+++ b/Modules/FindSDL_ttf.cmake
@@ -1,20 +1,34 @@
-# - Locate SDL_ttf library
+#.rst:
+# FindSDL_ttf
+# -----------
+#
+# Locate SDL_ttf library
+#
# This module defines:
-# SDL_TTF_LIBRARIES, the name of the library to link against
-# SDL_TTF_INCLUDE_DIRS, where to find the headers
-# SDL_TTF_FOUND, if false, do not try to link against
-# SDL_TTF_VERSION_STRING - human-readable string containing the version of SDL_ttf
+#
+# ::
+#
+# SDL_TTF_LIBRARIES, the name of the library to link against
+# SDL_TTF_INCLUDE_DIRS, where to find the headers
+# SDL_TTF_FOUND, if false, do not try to link against
+# SDL_TTF_VERSION_STRING - human-readable string containing the version of SDL_ttf
+#
+#
#
# For backward compatiblity the following variables are also set:
-# SDLTTF_LIBRARY (same value as SDL_TTF_LIBRARIES)
-# SDLTTF_INCLUDE_DIR (same value as SDL_TTF_INCLUDE_DIRS)
-# SDLTTF_FOUND (same value as SDL_TTF_FOUND)
#
-# $SDLDIR is an environment variable that would
-# correspond to the ./configure --prefix=$SDLDIR
-# used in building SDL.
+# ::
+#
+# SDLTTF_LIBRARY (same value as SDL_TTF_LIBRARIES)
+# SDLTTF_INCLUDE_DIR (same value as SDL_TTF_INCLUDE_DIRS)
+# SDLTTF_FOUND (same value as SDL_TTF_FOUND)
+#
+#
+#
+# $SDLDIR is an environment variable that would correspond to the
+# ./configure --prefix=$SDLDIR used in building SDL.
#
-# Created by Eric Wing. This was influenced by the FindSDL.cmake
+# Created by Eric Wing. This was influenced by the FindSDL.cmake
# module, but with modifications to recognize OS X frameworks and
# additional Unix paths (FreeBSD, etc).
diff --git a/Modules/FindSWIG.cmake b/Modules/FindSWIG.cmake
index db60b888cc..bb78bc2302 100644
--- a/Modules/FindSWIG.cmake
+++ b/Modules/FindSWIG.cmake
@@ -1,17 +1,26 @@
-# - Find SWIG
+#.rst:
+# FindSWIG
+# --------
+#
+# Find SWIG
+#
# This module finds an installed SWIG. It sets the following variables:
-# SWIG_FOUND - set to true if SWIG is found
-# SWIG_DIR - the directory where swig is installed
-# SWIG_EXECUTABLE - the path to the swig executable
-# SWIG_VERSION - the version number of the swig executable
#
-# The minimum required version of SWIG can be specified using the
-# standard syntax, e.g. find_package(SWIG 1.1)
+# ::
+#
+# SWIG_FOUND - set to true if SWIG is found
+# SWIG_DIR - the directory where swig is installed
+# SWIG_EXECUTABLE - the path to the swig executable
+# SWIG_VERSION - the version number of the swig executable
#
-# All information is collected from the SWIG_EXECUTABLE so the
-# version to be found can be changed from the command line by
-# means of setting SWIG_EXECUTABLE
#
+#
+# The minimum required version of SWIG can be specified using the
+# standard syntax, e.g. find_package(SWIG 1.1)
+#
+# All information is collected from the SWIG_EXECUTABLE so the version
+# to be found can be changed from the command line by means of setting
+# SWIG_EXECUTABLE
#=============================================================================
# Copyright 2004-2009 Kitware, Inc.
diff --git a/Modules/FindSelfPackers.cmake b/Modules/FindSelfPackers.cmake
index fd28642514..238be89a0a 100644
--- a/Modules/FindSelfPackers.cmake
+++ b/Modules/FindSelfPackers.cmake
@@ -1,9 +1,16 @@
-# - Find upx
-# This module looks for some executable packers (i.e. software that
+#.rst:
+# FindSelfPackers
+# ---------------
+#
+# Find upx
+#
+# This module looks for some executable packers (i.e. software that
# compress executables or shared libs into on-the-fly self-extracting
-# executables or shared libs.
-# Examples:
-# UPX: http://wildsau.idv.uni-linz.ac.at/mfx/upx.html
+# executables or shared libs. Examples:
+#
+# ::
+#
+# UPX: http://wildsau.idv.uni-linz.ac.at/mfx/upx.html
#=============================================================================
# Copyright 2001-2009 Kitware, Inc.
diff --git a/Modules/FindSquish.cmake b/Modules/FindSquish.cmake
index b797805774..5cff122ea7 100644
--- a/Modules/FindSquish.cmake
+++ b/Modules/FindSquish.cmake
@@ -1,63 +1,108 @@
+#.rst:
+# FindSquish
+# ----------
#
-# ---- Find Squish
-# This module can be used to find Squish. Currently Squish versions 3 and 4 are supported.
+# -- Typical Use
#
-# ---- Variables and Macros
-# SQUISH_FOUND If false, don't try to use Squish
-# SQUISH_VERSION The full version of Squish found
-# SQUISH_VERSION_MAJOR The major version of Squish found
-# SQUISH_VERSION_MINOR The minor version of Squish found
-# SQUISH_VERSION_PATCH The patch version of Squish found
#
-# SQUISH_INSTALL_DIR The Squish installation directory (containing bin, lib, etc)
-# SQUISH_SERVER_EXECUTABLE The squishserver executable
-# SQUISH_CLIENT_EXECUTABLE The squishrunner executable
#
-# SQUISH_INSTALL_DIR_FOUND Was the install directory found?
-# SQUISH_SERVER_EXECUTABLE_FOUND Was the server executable found?
-# SQUISH_CLIENT_EXECUTABLE_FOUND Was the client executable found?
+# This module can be used to find Squish. Currently Squish versions 3
+# and 4 are supported.
+#
+# ::
+#
+# SQUISH_FOUND If false, don't try to use Squish
+# SQUISH_VERSION The full version of Squish found
+# SQUISH_VERSION_MAJOR The major version of Squish found
+# SQUISH_VERSION_MINOR The minor version of Squish found
+# SQUISH_VERSION_PATCH The patch version of Squish found
+#
+#
+#
+# ::
+#
+# SQUISH_INSTALL_DIR The Squish installation directory (containing bin, lib, etc)
+# SQUISH_SERVER_EXECUTABLE The squishserver executable
+# SQUISH_CLIENT_EXECUTABLE The squishrunner executable
+#
+#
+#
+# ::
+#
+# SQUISH_INSTALL_DIR_FOUND Was the install directory found?
+# SQUISH_SERVER_EXECUTABLE_FOUND Was the server executable found?
+# SQUISH_CLIENT_EXECUTABLE_FOUND Was the client executable found?
+#
+#
+#
+# It provides the function squish_v4_add_test() for adding a squish test
+# to cmake using Squish 4.x:
+#
+# ::
+#
+# squish_v4_add_test(cmakeTestName AUT targetName SUITE suiteName TEST squishTestName
+# [SETTINGSGROUP group] [PRE_COMMAND command] [POST_COMMAND command] )
#
-# It provides the function squish_v4_add_test() for adding a squish test to cmake using Squish 4.x:
#
-# squish_v4_add_test(cmakeTestName AUT targetName SUITE suiteName TEST squishTestName
-# [SETTINGSGROUP group] [PRE_COMMAND command] [POST_COMMAND command] )
#
# The arguments have the following meaning:
-# cmakeTestName: this will be used as the first argument for add_test()
-# AUT targetName: the name of the cmake target which will be used as AUT, i.e. the
-# executable which will be tested.
-# SUITE suiteName: this is either the full path to the squish suite, or just the
-# last directory of the suite, i.e. the suite name. In this case
-# the CMakeLists.txt which calls squish_add_test() must be located
-# in the parent directory of the suite directory.
-# TEST squishTestName: the name of the squish test, i.e. the name of the subdirectory
-# of the test inside the suite directory.
-# SETTINGSGROUP group: if specified, the given settings group will be used for executing the test.
-# If not specified, the groupname will be "CTest_<username>"
-# PRE_COMMAND command: if specified, the given command will be executed before starting the squish test.
-# POST_COMMAND command: same as PRE_COMMAND, but after the squish test has been executed.
-#
-# ---- Typical Use
+#
+# ::
+#
+# cmakeTestName: this will be used as the first argument for add_test()
+# AUT targetName: the name of the cmake target which will be used as AUT, i.e. the
+# executable which will be tested.
+# SUITE suiteName: this is either the full path to the squish suite, or just the
+# last directory of the suite, i.e. the suite name. In this case
+# the CMakeLists.txt which calls squish_add_test() must be located
+# in the parent directory of the suite directory.
+# TEST squishTestName: the name of the squish test, i.e. the name of the subdirectory
+# of the test inside the suite directory.
+# SETTINGSGROUP group: if specified, the given settings group will be used for executing the test.
+# If not specified, the groupname will be "CTest_<username>"
+# PRE_COMMAND command: if specified, the given command will be executed before starting the squish test.
+# POST_COMMAND command: same as PRE_COMMAND, but after the squish test has been executed.
+#
+#
+#
+# ::
+#
+# enable_testing()
+# find_package(Squish 4.0)
+# if (SQUISH_FOUND)
+# squish_v4_add_test(myTestName AUT myApp SUITE ${CMAKE_SOURCE_DIR}/tests/mySuite TEST someSquishTest SETTINGSGROUP myGroup )
+# endif ()
+#
+#
+#
+#
+#
+# For users of Squish version 3.x the macro squish_v3_add_test() is
+# provided:
+#
+# ::
+#
+# squish_v3_add_test(testName applicationUnderTest testCase envVars testWrapper)
+# Use this macro to add a test using Squish 3.x.
+#
+#
+#
+# ::
+#
# enable_testing()
-# find_package(Squish 4.0)
+# find_package(Squish)
# if (SQUISH_FOUND)
-# squish_v4_add_test(myTestName AUT myApp SUITE ${CMAKE_SOURCE_DIR}/tests/mySuite TEST someSquishTest SETTINGSGROUP myGroup )
+# squish_v3_add_test(myTestName myApplication testCase envVars testWrapper)
# endif ()
#
#
-# For users of Squish version 3.x the macro squish_v3_add_test() is provided:
-# squish_v3_add_test(testName applicationUnderTest testCase envVars testWrapper)
-# Use this macro to add a test using Squish 3.x.
#
-# ---- Typical Use
-# enable_testing()
-# find_package(Squish)
-# if (SQUISH_FOUND)
-# squish_v3_add_test(myTestName myApplication testCase envVars testWrapper)
-# endif ()
+# macro SQUISH_ADD_TEST(testName applicationUnderTest testCase envVars
+# testWrapper)
+#
+# ::
#
-# macro SQUISH_ADD_TEST(testName applicationUnderTest testCase envVars testWrapper)
-# This is deprecated. Use SQUISH_V3_ADD_TEST() if you are using Squish 3.x instead.
+# This is deprecated. Use SQUISH_V3_ADD_TEST() if you are using Squish 3.x instead.
#=============================================================================
diff --git a/Modules/FindSubversion.cmake b/Modules/FindSubversion.cmake
index f1bfc75bca..23387219fd 100644
--- a/Modules/FindSubversion.cmake
+++ b/Modules/FindSubversion.cmake
@@ -1,37 +1,62 @@
-# - Extract information from a subversion working copy
+#.rst:
+# FindSubversion
+# --------------
+#
+# Extract information from a subversion working copy
+#
# The module defines the following variables:
-# Subversion_SVN_EXECUTABLE - path to svn command line client
-# Subversion_VERSION_SVN - version of svn command line client
-# Subversion_FOUND - true if the command line client was found
-# SUBVERSION_FOUND - same as Subversion_FOUND, set for compatiblity reasons
+#
+# ::
+#
+# Subversion_SVN_EXECUTABLE - path to svn command line client
+# Subversion_VERSION_SVN - version of svn command line client
+# Subversion_FOUND - true if the command line client was found
+# SUBVERSION_FOUND - same as Subversion_FOUND, set for compatiblity reasons
+#
+#
#
# The minimum required version of Subversion can be specified using the
-# standard syntax, e.g. find_package(Subversion 1.4)
+# standard syntax, e.g. find_package(Subversion 1.4)
#
# If the command line client executable is found two macros are defined:
-# Subversion_WC_INFO(<dir> <var-prefix>)
-# Subversion_WC_LOG(<dir> <var-prefix>)
-# Subversion_WC_INFO extracts information of a subversion working copy at
-# a given location. This macro defines the following variables:
-# <var-prefix>_WC_URL - url of the repository (at <dir>)
-# <var-prefix>_WC_ROOT - root url of the repository
-# <var-prefix>_WC_REVISION - current revision
-# <var-prefix>_WC_LAST_CHANGED_AUTHOR - author of last commit
-# <var-prefix>_WC_LAST_CHANGED_DATE - date of last commit
-# <var-prefix>_WC_LAST_CHANGED_REV - revision of last commit
-# <var-prefix>_WC_INFO - output of command `svn info <dir>'
+#
+# ::
+#
+# Subversion_WC_INFO(<dir> <var-prefix>)
+# Subversion_WC_LOG(<dir> <var-prefix>)
+#
+# Subversion_WC_INFO extracts information of a subversion working copy
+# at a given location. This macro defines the following variables:
+#
+# ::
+#
+# <var-prefix>_WC_URL - url of the repository (at <dir>)
+# <var-prefix>_WC_ROOT - root url of the repository
+# <var-prefix>_WC_REVISION - current revision
+# <var-prefix>_WC_LAST_CHANGED_AUTHOR - author of last commit
+# <var-prefix>_WC_LAST_CHANGED_DATE - date of last commit
+# <var-prefix>_WC_LAST_CHANGED_REV - revision of last commit
+# <var-prefix>_WC_INFO - output of command `svn info <dir>'
+#
# Subversion_WC_LOG retrieves the log message of the base revision of a
-# subversion working copy at a given location. This macro defines the
+# subversion working copy at a given location. This macro defines the
# variable:
-# <var-prefix>_LAST_CHANGED_LOG - last log of base revision
+#
+# ::
+#
+# <var-prefix>_LAST_CHANGED_LOG - last log of base revision
+#
# Example usage:
-# find_package(Subversion)
-# if(SUBVERSION_FOUND)
-# Subversion_WC_INFO(${PROJECT_SOURCE_DIR} Project)
-# message("Current revision is ${Project_WC_REVISION}")
-# Subversion_WC_LOG(${PROJECT_SOURCE_DIR} Project)
-# message("Last changed log is ${Project_LAST_CHANGED_LOG}")
-# endif()
+#
+# ::
+#
+# find_package(Subversion)
+# if(SUBVERSION_FOUND)
+# Subversion_WC_INFO(${PROJECT_SOURCE_DIR} Project)
+# message("Current revision is ${Project_WC_REVISION}")
+# Subversion_WC_LOG(${PROJECT_SOURCE_DIR} Project)
+# message("Last changed log is ${Project_LAST_CHANGED_LOG}")
+# endif()
#=============================================================================
# Copyright 2006-2009 Kitware, Inc.
diff --git a/Modules/FindTCL.cmake b/Modules/FindTCL.cmake
index 37e43d05a7..a83e277b0c 100644
--- a/Modules/FindTCL.cmake
+++ b/Modules/FindTCL.cmake
@@ -1,35 +1,45 @@
-# - Find Tcl includes and libraries.
-# This module finds if Tcl is installed and determines where the
-# include files and libraries are. It also determines what the name of
-# the library is. This code sets the following variables:
-# TCL_FOUND = Tcl was found
-# TK_FOUND = Tk was found
-# TCLTK_FOUND = Tcl and Tk were found
-# TCL_LIBRARY = path to Tcl library (tcl tcl80)
-# TCL_INCLUDE_PATH = path to where tcl.h can be found
-# TCL_TCLSH = path to tclsh binary (tcl tcl80)
-# TK_LIBRARY = path to Tk library (tk tk80 etc)
-# TK_INCLUDE_PATH = path to where tk.h can be found
-# TK_WISH = full path to the wish executable
+#.rst:
+# FindTCL
+# -------
#
-# In an effort to remove some clutter and clear up some issues for people
-# who are not necessarily Tcl/Tk gurus/developpers, some variables were
-# moved or removed. Changes compared to CMake 2.4 are:
-# - The stub libraries are now found in FindTclStub.cmake
-# => they were only useful for people writing Tcl/Tk extensions.
-# - TCL_LIBRARY_DEBUG and TK_LIBRARY_DEBUG were removed.
-# => these libs are not packaged by default with Tcl/Tk distributions.
-# Even when Tcl/Tk is built from source, several flavors of debug libs
-# are created and there is no real reason to pick a single one
-# specifically (say, amongst tcl84g, tcl84gs, or tcl84sgx).
-# Let's leave that choice to the user by allowing him to assign
-# TCL_LIBRARY to any Tcl library, debug or not.
-# - TK_INTERNAL_PATH was removed.
-# => this ended up being only a Win32 variable, and there is a lot of
-# confusion regarding the location of this file in an installed Tcl/Tk
-# tree anyway (see 8.5 for example). If you need the internal path at
-# this point it is safer you ask directly where the *source* tree is
-# and dig from there.
+# TK_INTERNAL_PATH was removed.
+#
+# This module finds if Tcl is installed and determines where the include
+# files and libraries are. It also determines what the name of the
+# library is. This code sets the following variables:
+#
+# ::
+#
+# TCL_FOUND = Tcl was found
+# TK_FOUND = Tk was found
+# TCLTK_FOUND = Tcl and Tk were found
+# TCL_LIBRARY = path to Tcl library (tcl tcl80)
+# TCL_INCLUDE_PATH = path to where tcl.h can be found
+# TCL_TCLSH = path to tclsh binary (tcl tcl80)
+# TK_LIBRARY = path to Tk library (tk tk80 etc)
+# TK_INCLUDE_PATH = path to where tk.h can be found
+# TK_WISH = full path to the wish executable
+#
+#
+#
+# In an effort to remove some clutter and clear up some issues for
+# people who are not necessarily Tcl/Tk gurus/developpers, some
+# variables were moved or removed. Changes compared to CMake 2.4 are:
+#
+# ::
+#
+# => they were only useful for people writing Tcl/Tk extensions.
+# => these libs are not packaged by default with Tcl/Tk distributions.
+# Even when Tcl/Tk is built from source, several flavors of debug libs
+# are created and there is no real reason to pick a single one
+# specifically (say, amongst tcl84g, tcl84gs, or tcl84sgx).
+# Let's leave that choice to the user by allowing him to assign
+# TCL_LIBRARY to any Tcl library, debug or not.
+# => this ended up being only a Win32 variable, and there is a lot of
+# confusion regarding the location of this file in an installed Tcl/Tk
+# tree anyway (see 8.5 for example). If you need the internal path at
+# this point it is safer you ask directly where the *source* tree is
+# and dig from there.
#=============================================================================
# Copyright 2001-2009 Kitware, Inc.
diff --git a/Modules/FindTIFF.cmake b/Modules/FindTIFF.cmake
index b48fb0e1d6..a67d24d0a0 100644
--- a/Modules/FindTIFF.cmake
+++ b/Modules/FindTIFF.cmake
@@ -1,11 +1,22 @@
-# - Find TIFF library
-# Find the native TIFF includes and library
-# This module defines
-# TIFF_INCLUDE_DIR, where to find tiff.h, etc.
-# TIFF_LIBRARIES, libraries to link against to use TIFF.
-# TIFF_FOUND, If false, do not try to use TIFF.
+#.rst:
+# FindTIFF
+# --------
+#
+# Find TIFF library
+#
+# Find the native TIFF includes and library This module defines
+#
+# ::
+#
+# TIFF_INCLUDE_DIR, where to find tiff.h, etc.
+# TIFF_LIBRARIES, libraries to link against to use TIFF.
+# TIFF_FOUND, If false, do not try to use TIFF.
+#
# also defined, but not for general use are
-# TIFF_LIBRARY, where to find the TIFF library.
+#
+# ::
+#
+# TIFF_LIBRARY, where to find the TIFF library.
#=============================================================================
# Copyright 2002-2009 Kitware, Inc.
diff --git a/Modules/FindTclStub.cmake b/Modules/FindTclStub.cmake
index 8dda94a79a..3c24f9721e 100644
--- a/Modules/FindTclStub.cmake
+++ b/Modules/FindTclStub.cmake
@@ -1,25 +1,45 @@
-# - Find Tcl stub libraries.
-# This module finds Tcl stub libraries. It first finds Tcl include files and
-# libraries by calling FindTCL.cmake.
-# How to Use the Tcl Stubs Library:
-# http://tcl.activestate.com/doc/howto/stubs.html
+#.rst:
+# FindTclStub
+# -----------
+#
+# TCL_STUB_LIBRARY_DEBUG and TK_STUB_LIBRARY_DEBUG were removed.
+#
+# This module finds Tcl stub libraries. It first finds Tcl include
+# files and libraries by calling FindTCL.cmake. How to Use the Tcl
+# Stubs Library:
+#
+# ::
+#
+# http://tcl.activestate.com/doc/howto/stubs.html
+#
# Using Stub Libraries:
-# http://safari.oreilly.com/0130385603/ch48lev1sec3
+#
+# ::
+#
+# http://safari.oreilly.com/0130385603/ch48lev1sec3
+#
# This code sets the following variables:
-# TCL_STUB_LIBRARY = path to Tcl stub library
-# TK_STUB_LIBRARY = path to Tk stub library
-# TTK_STUB_LIBRARY = path to ttk stub library
-#
-# In an effort to remove some clutter and clear up some issues for people
-# who are not necessarily Tcl/Tk gurus/developpers, some variables were
-# moved or removed. Changes compared to CMake 2.4 are:
-# - TCL_STUB_LIBRARY_DEBUG and TK_STUB_LIBRARY_DEBUG were removed.
-# => these libs are not packaged by default with Tcl/Tk distributions.
-# Even when Tcl/Tk is built from source, several flavors of debug libs
-# are created and there is no real reason to pick a single one
-# specifically (say, amongst tclstub84g, tclstub84gs, or tclstub84sgx).
-# Let's leave that choice to the user by allowing him to assign
-# TCL_STUB_LIBRARY to any Tcl library, debug or not.
+#
+# ::
+#
+# TCL_STUB_LIBRARY = path to Tcl stub library
+# TK_STUB_LIBRARY = path to Tk stub library
+# TTK_STUB_LIBRARY = path to ttk stub library
+#
+#
+#
+# In an effort to remove some clutter and clear up some issues for
+# people who are not necessarily Tcl/Tk gurus/developpers, some
+# variables were moved or removed. Changes compared to CMake 2.4 are:
+#
+# ::
+#
+# => these libs are not packaged by default with Tcl/Tk distributions.
+# Even when Tcl/Tk is built from source, several flavors of debug libs
+# are created and there is no real reason to pick a single one
+# specifically (say, amongst tclstub84g, tclstub84gs, or tclstub84sgx).
+# Let's leave that choice to the user by allowing him to assign
+# TCL_STUB_LIBRARY to any Tcl library, debug or not.
#=============================================================================
# Copyright 2008-2009 Kitware, Inc.
diff --git a/Modules/FindTclsh.cmake b/Modules/FindTclsh.cmake
index 0f091e60d7..2fd5332aa7 100644
--- a/Modules/FindTclsh.cmake
+++ b/Modules/FindTclsh.cmake
@@ -1,11 +1,20 @@
-# - Find tclsh
-# This module finds if TCL is installed and determines where the
-# include files and libraries are. It also determines what the name of
-# the library is. This code sets the following variables:
-# TCLSH_FOUND = TRUE if tclsh has been found
-# TCL_TCLSH = the path to the tclsh executable
-# In cygwin, look for the cygwin version first. Don't look for it later to
-# avoid finding the cygwin version on a Win32 build.
+#.rst:
+# FindTclsh
+# ---------
+#
+# Find tclsh
+#
+# This module finds if TCL is installed and determines where the include
+# files and libraries are. It also determines what the name of the
+# library is. This code sets the following variables:
+#
+# ::
+#
+# TCLSH_FOUND = TRUE if tclsh has been found
+# TCL_TCLSH = the path to the tclsh executable
+#
+# In cygwin, look for the cygwin version first. Don't look for it later
+# to avoid finding the cygwin version on a Win32 build.
#=============================================================================
# Copyright 2001-2009 Kitware, Inc.
diff --git a/Modules/FindThreads.cmake b/Modules/FindThreads.cmake
index f03908ea06..ec671bfc58 100644
--- a/Modules/FindThreads.cmake
+++ b/Modules/FindThreads.cmake
@@ -1,12 +1,24 @@
-# - This module determines the thread library of the system.
+#.rst:
+# FindThreads
+# -----------
+#
+# This module determines the thread library of the system.
+#
# The following variables are set
-# CMAKE_THREAD_LIBS_INIT - the thread library
-# CMAKE_USE_SPROC_INIT - are we using sproc?
-# CMAKE_USE_WIN32_THREADS_INIT - using WIN32 threads?
-# CMAKE_USE_PTHREADS_INIT - are we using pthreads
-# CMAKE_HP_PTHREADS_INIT - are we using hp pthreads
+#
+# ::
+#
+# CMAKE_THREAD_LIBS_INIT - the thread library
+# CMAKE_USE_SPROC_INIT - are we using sproc?
+# CMAKE_USE_WIN32_THREADS_INIT - using WIN32 threads?
+# CMAKE_USE_PTHREADS_INIT - are we using pthreads
+# CMAKE_HP_PTHREADS_INIT - are we using hp pthreads
+#
# For systems with multiple thread libraries, caller can set
-# CMAKE_THREAD_PREFER_PTHREAD
+#
+# ::
+#
+# CMAKE_THREAD_PREFER_PTHREAD
#=============================================================================
# Copyright 2002-2009 Kitware, Inc.
diff --git a/Modules/FindUnixCommands.cmake b/Modules/FindUnixCommands.cmake
index 87caadc099..d4e5dcdf72 100644
--- a/Modules/FindUnixCommands.cmake
+++ b/Modules/FindUnixCommands.cmake
@@ -1,6 +1,10 @@
-# - Find unix commands from cygwin
-# This module looks for some usual Unix commands.
+#.rst:
+# FindUnixCommands
+# ----------------
+#
+# Find unix commands from cygwin
#
+# This module looks for some usual Unix commands.
#=============================================================================
# Copyright 2001-2009 Kitware, Inc.
diff --git a/Modules/FindVTK.cmake b/Modules/FindVTK.cmake
index 085d60d041..bcc7f87b96 100644
--- a/Modules/FindVTK.cmake
+++ b/Modules/FindVTK.cmake
@@ -1,31 +1,46 @@
-# - Find a VTK installation or build tree.
-# The following variables are set if VTK is found. If VTK is not
-# found, VTK_FOUND is set to false.
-# VTK_FOUND - Set to true when VTK is found.
-# VTK_USE_FILE - CMake file to use VTK.
-# VTK_MAJOR_VERSION - The VTK major version number.
-# VTK_MINOR_VERSION - The VTK minor version number
-# (odd non-release).
-# VTK_BUILD_VERSION - The VTK patch level
-# (meaningless for odd minor).
-# VTK_INCLUDE_DIRS - Include directories for VTK
-# VTK_LIBRARY_DIRS - Link directories for VTK libraries
-# VTK_KITS - List of VTK kits, in CAPS
-# (COMMON,IO,) etc.
-# VTK_LANGUAGES - List of wrapped languages, in CAPS
-# (TCL, PYHTON,) etc.
+#.rst:
+# FindVTK
+# -------
+#
+# Find a VTK installation or build tree.
+#
+# The following variables are set if VTK is found. If VTK is not found,
+# VTK_FOUND is set to false.
+#
+# ::
+#
+# VTK_FOUND - Set to true when VTK is found.
+# VTK_USE_FILE - CMake file to use VTK.
+# VTK_MAJOR_VERSION - The VTK major version number.
+# VTK_MINOR_VERSION - The VTK minor version number
+# (odd non-release).
+# VTK_BUILD_VERSION - The VTK patch level
+# (meaningless for odd minor).
+# VTK_INCLUDE_DIRS - Include directories for VTK
+# VTK_LIBRARY_DIRS - Link directories for VTK libraries
+# VTK_KITS - List of VTK kits, in CAPS
+# (COMMON,IO,) etc.
+# VTK_LANGUAGES - List of wrapped languages, in CAPS
+# (TCL, PYHTON,) etc.
+#
# The following cache entries must be set by the user to locate VTK:
-# VTK_DIR - The directory containing VTKConfig.cmake.
-# This is either the root of the build tree,
-# or the lib/vtk directory. This is the
-# only cache entry.
-# The following variables are set for backward compatibility and
-# should not be used in new code:
-# USE_VTK_FILE - The full path to the UseVTK.cmake file.
-# This is provided for backward
-# compatibility. Use VTK_USE_FILE
-# instead.
#
+# ::
+#
+# VTK_DIR - The directory containing VTKConfig.cmake.
+# This is either the root of the build tree,
+# or the lib/vtk directory. This is the
+# only cache entry.
+#
+# The following variables are set for backward compatibility and should
+# not be used in new code:
+#
+# ::
+#
+# USE_VTK_FILE - The full path to the UseVTK.cmake file.
+# This is provided for backward
+# compatibility. Use VTK_USE_FILE
+# instead.
#=============================================================================
# Copyright 2001-2009 Kitware, Inc.
diff --git a/Modules/FindWget.cmake b/Modules/FindWget.cmake
index 4da98b149a..b303b407d9 100644
--- a/Modules/FindWget.cmake
+++ b/Modules/FindWget.cmake
@@ -1,8 +1,15 @@
-# - Find wget
-# This module looks for wget. This module defines the
-# following values:
-# WGET_EXECUTABLE: the full path to the wget tool.
-# WGET_FOUND: True if wget has been found.
+#.rst:
+# FindWget
+# --------
+#
+# Find wget
+#
+# This module looks for wget. This module defines the following values:
+#
+# ::
+#
+# WGET_EXECUTABLE: the full path to the wget tool.
+# WGET_FOUND: True if wget has been found.
#=============================================================================
# Copyright 2001-2009 Kitware, Inc.
diff --git a/Modules/FindWish.cmake b/Modules/FindWish.cmake
index 11b29f249d..df301b4127 100644
--- a/Modules/FindWish.cmake
+++ b/Modules/FindWish.cmake
@@ -1,9 +1,18 @@
-# - Find wish installation
-# This module finds if TCL is installed and determines where the
-# include files and libraries are. It also determines what the name of
-# the library is. This code sets the following variables:
+#.rst:
+# FindWish
+# --------
+#
+# Find wish installation
+#
+# This module finds if TCL is installed and determines where the include
+# files and libraries are. It also determines what the name of the
+# library is. This code sets the following variables:
+#
+# ::
+#
+# TK_WISH = the path to the wish executable
+#
#
-# TK_WISH = the path to the wish executable
#
# if UNIX is defined, then it will look for the cygwin version first
diff --git a/Modules/FindX11.cmake b/Modules/FindX11.cmake
index 131d979941..67cecc212c 100644
--- a/Modules/FindX11.cmake
+++ b/Modules/FindX11.cmake
@@ -1,44 +1,57 @@
-# - Find X11 installation
-# Try to find X11 on UNIX systems. The following values are defined
-# X11_FOUND - True if X11 is available
-# X11_INCLUDE_DIR - include directories to use X11
-# X11_LIBRARIES - link against these to use X11
+#.rst:
+# FindX11
+# -------
#
-# and also the following more fine grained variables:
-# Include paths: X11_ICE_INCLUDE_PATH, X11_ICE_LIB, X11_ICE_FOUND
-# X11_SM_INCLUDE_PATH, X11_SM_LIB, X11_SM_FOUND
-# X11_X11_INCLUDE_PATH, X11_X11_LIB
-# X11_Xaccessrules_INCLUDE_PATH, X11_Xaccess_FOUND
-# X11_Xaccessstr_INCLUDE_PATH, X11_Xaccess_FOUND
-# X11_Xau_INCLUDE_PATH, X11_Xau_LIB, X11_Xau_FOUND
-# X11_Xcomposite_INCLUDE_PATH, X11_Xcomposite_LIB, X11_Xcomposite_FOUND
-# X11_Xcursor_INCLUDE_PATH, X11_Xcursor_LIB, X11_Xcursor_FOUND
-# X11_Xdamage_INCLUDE_PATH, X11_Xdamage_LIB, X11_Xdamage_FOUND
-# X11_Xdmcp_INCLUDE_PATH, X11_Xdmcp_LIB, X11_Xdmcp_FOUND
-# X11_Xext_LIB, X11_Xext_FOUND
-# X11_dpms_INCLUDE_PATH, (in X11_Xext_LIB), X11_dpms_FOUND
-# X11_XShm_INCLUDE_PATH, (in X11_Xext_LIB), X11_XShm_FOUND
-# X11_Xshape_INCLUDE_PATH, (in X11_Xext_LIB), X11_Xshape_FOUND
-# X11_xf86misc_INCLUDE_PATH, X11_Xxf86misc_LIB, X11_xf86misc_FOUND
-# X11_xf86vmode_INCLUDE_PATH, X11_Xxf86vm_LIB X11_xf86vmode_FOUND
-# X11_Xfixes_INCLUDE_PATH, X11_Xfixes_LIB, X11_Xfixes_FOUND
-# X11_Xft_INCLUDE_PATH, X11_Xft_LIB, X11_Xft_FOUND
-# X11_Xi_INCLUDE_PATH, X11_Xi_LIB, X11_Xi_FOUND
-# X11_Xinerama_INCLUDE_PATH, X11_Xinerama_LIB, X11_Xinerama_FOUND
-# X11_Xinput_INCLUDE_PATH, X11_Xinput_LIB, X11_Xinput_FOUND
-# X11_Xkb_INCLUDE_PATH, X11_Xkb_FOUND
-# X11_Xkblib_INCLUDE_PATH, X11_Xkb_FOUND
-# X11_Xkbfile_INCLUDE_PATH, X11_Xkbfile_LIB, X11_Xkbfile_FOUND
-# X11_Xmu_INCLUDE_PATH, X11_Xmu_LIB, X11_Xmu_FOUND
-# X11_Xpm_INCLUDE_PATH, X11_Xpm_LIB, X11_Xpm_FOUND
-# X11_XTest_INCLUDE_PATH, X11_XTest_LIB, X11_XTest_FOUND
-# X11_Xrandr_INCLUDE_PATH, X11_Xrandr_LIB, X11_Xrandr_FOUND
-# X11_Xrender_INCLUDE_PATH, X11_Xrender_LIB, X11_Xrender_FOUND
-# X11_Xscreensaver_INCLUDE_PATH, X11_Xscreensaver_LIB, X11_Xscreensaver_FOUND
-# X11_Xt_INCLUDE_PATH, X11_Xt_LIB, X11_Xt_FOUND
-# X11_Xutil_INCLUDE_PATH, X11_Xutil_FOUND
-# X11_Xv_INCLUDE_PATH, X11_Xv_LIB, X11_Xv_FOUND
-# X11_XSync_INCLUDE_PATH, (in X11_Xext_LIB), X11_XSync_FOUND
+# Find X11 installation
+#
+# Try to find X11 on UNIX systems. The following values are defined
+#
+# ::
+#
+# X11_FOUND - True if X11 is available
+# X11_INCLUDE_DIR - include directories to use X11
+# X11_LIBRARIES - link against these to use X11
+#
+#
+#
+# and also the following more fine grained variables: Include paths:
+# X11_ICE_INCLUDE_PATH, X11_ICE_LIB, X11_ICE_FOUND
+#
+# ::
+#
+# X11_SM_INCLUDE_PATH, X11_SM_LIB, X11_SM_FOUND
+# X11_X11_INCLUDE_PATH, X11_X11_LIB
+# X11_Xaccessrules_INCLUDE_PATH, X11_Xaccess_FOUND
+# X11_Xaccessstr_INCLUDE_PATH, X11_Xaccess_FOUND
+# X11_Xau_INCLUDE_PATH, X11_Xau_LIB, X11_Xau_FOUND
+# X11_Xcomposite_INCLUDE_PATH, X11_Xcomposite_LIB, X11_Xcomposite_FOUND
+# X11_Xcursor_INCLUDE_PATH, X11_Xcursor_LIB, X11_Xcursor_FOUND
+# X11_Xdamage_INCLUDE_PATH, X11_Xdamage_LIB, X11_Xdamage_FOUND
+# X11_Xdmcp_INCLUDE_PATH, X11_Xdmcp_LIB, X11_Xdmcp_FOUND
+# X11_Xext_LIB, X11_Xext_FOUND
+# X11_dpms_INCLUDE_PATH, (in X11_Xext_LIB), X11_dpms_FOUND
+# X11_XShm_INCLUDE_PATH, (in X11_Xext_LIB), X11_XShm_FOUND
+# X11_Xshape_INCLUDE_PATH, (in X11_Xext_LIB), X11_Xshape_FOUND
+# X11_xf86misc_INCLUDE_PATH, X11_Xxf86misc_LIB, X11_xf86misc_FOUND
+# X11_xf86vmode_INCLUDE_PATH, X11_Xxf86vm_LIB X11_xf86vmode_FOUND
+# X11_Xfixes_INCLUDE_PATH, X11_Xfixes_LIB, X11_Xfixes_FOUND
+# X11_Xft_INCLUDE_PATH, X11_Xft_LIB, X11_Xft_FOUND
+# X11_Xi_INCLUDE_PATH, X11_Xi_LIB, X11_Xi_FOUND
+# X11_Xinerama_INCLUDE_PATH, X11_Xinerama_LIB, X11_Xinerama_FOUND
+# X11_Xinput_INCLUDE_PATH, X11_Xinput_LIB, X11_Xinput_FOUND
+# X11_Xkb_INCLUDE_PATH, X11_Xkb_FOUND
+# X11_Xkblib_INCLUDE_PATH, X11_Xkb_FOUND
+# X11_Xkbfile_INCLUDE_PATH, X11_Xkbfile_LIB, X11_Xkbfile_FOUND
+# X11_Xmu_INCLUDE_PATH, X11_Xmu_LIB, X11_Xmu_FOUND
+# X11_Xpm_INCLUDE_PATH, X11_Xpm_LIB, X11_Xpm_FOUND
+# X11_XTest_INCLUDE_PATH, X11_XTest_LIB, X11_XTest_FOUND
+# X11_Xrandr_INCLUDE_PATH, X11_Xrandr_LIB, X11_Xrandr_FOUND
+# X11_Xrender_INCLUDE_PATH, X11_Xrender_LIB, X11_Xrender_FOUND
+# X11_Xscreensaver_INCLUDE_PATH, X11_Xscreensaver_LIB, X11_Xscreensaver_FOUND
+# X11_Xt_INCLUDE_PATH, X11_Xt_LIB, X11_Xt_FOUND
+# X11_Xutil_INCLUDE_PATH, X11_Xutil_FOUND
+# X11_Xv_INCLUDE_PATH, X11_Xv_LIB, X11_Xv_FOUND
+# X11_XSync_INCLUDE_PATH, (in X11_Xext_LIB), X11_XSync_FOUND
#=============================================================================
diff --git a/Modules/FindXMLRPC.cmake b/Modules/FindXMLRPC.cmake
index c80249b565..e855050b44 100644
--- a/Modules/FindXMLRPC.cmake
+++ b/Modules/FindXMLRPC.cmake
@@ -1,16 +1,32 @@
-# - Find xmlrpc
+#.rst:
+# FindXMLRPC
+# ----------
+#
+# Find xmlrpc
+#
# Find the native XMLRPC headers and libraries.
-# XMLRPC_INCLUDE_DIRS - where to find xmlrpc.h, etc.
-# XMLRPC_LIBRARIES - List of libraries when using xmlrpc.
-# XMLRPC_FOUND - True if xmlrpc found.
+#
+# ::
+#
+# XMLRPC_INCLUDE_DIRS - where to find xmlrpc.h, etc.
+# XMLRPC_LIBRARIES - List of libraries when using xmlrpc.
+# XMLRPC_FOUND - True if xmlrpc found.
+#
# XMLRPC modules may be specified as components for this find module.
# Modules may be listed by running "xmlrpc-c-config". Modules include:
-# c++ C++ wrapper code
-# libwww-client libwww-based client
-# cgi-server CGI-based server
-# abyss-server ABYSS-based server
+#
+# ::
+#
+# c++ C++ wrapper code
+# libwww-client libwww-based client
+# cgi-server CGI-based server
+# abyss-server ABYSS-based server
+#
# Typical usage:
-# find_package(XMLRPC REQUIRED libwww-client)
+#
+# ::
+#
+# find_package(XMLRPC REQUIRED libwww-client)
#=============================================================================
# Copyright 2001-2009 Kitware, Inc.
diff --git a/Modules/FindZLIB.cmake b/Modules/FindZLIB.cmake
index 00b9c64dac..75b0076406 100644
--- a/Modules/FindZLIB.cmake
+++ b/Modules/FindZLIB.cmake
@@ -1,25 +1,41 @@
-# - Find zlib
-# Find the native ZLIB includes and library.
-# Once done this will define
+#.rst:
+# FindZLIB
+# --------
+#
+# Find zlib
+#
+# Find the native ZLIB includes and library. Once done this will define
+#
+# ::
+#
+# ZLIB_INCLUDE_DIRS - where to find zlib.h, etc.
+# ZLIB_LIBRARIES - List of libraries when using zlib.
+# ZLIB_FOUND - True if zlib found.
+#
+#
+#
+# ::
+#
+# ZLIB_VERSION_STRING - The version of zlib found (x.y.z)
+# ZLIB_VERSION_MAJOR - The major version of zlib
+# ZLIB_VERSION_MINOR - The minor version of zlib
+# ZLIB_VERSION_PATCH - The patch version of zlib
+# ZLIB_VERSION_TWEAK - The tweak version of zlib
#
-# ZLIB_INCLUDE_DIRS - where to find zlib.h, etc.
-# ZLIB_LIBRARIES - List of libraries when using zlib.
-# ZLIB_FOUND - True if zlib found.
#
-# ZLIB_VERSION_STRING - The version of zlib found (x.y.z)
-# ZLIB_VERSION_MAJOR - The major version of zlib
-# ZLIB_VERSION_MINOR - The minor version of zlib
-# ZLIB_VERSION_PATCH - The patch version of zlib
-# ZLIB_VERSION_TWEAK - The tweak version of zlib
#
# The following variable are provided for backward compatibility
#
-# ZLIB_MAJOR_VERSION - The major version of zlib
-# ZLIB_MINOR_VERSION - The minor version of zlib
-# ZLIB_PATCH_VERSION - The patch version of zlib
+# ::
+#
+# ZLIB_MAJOR_VERSION - The major version of zlib
+# ZLIB_MINOR_VERSION - The minor version of zlib
+# ZLIB_PATCH_VERSION - The patch version of zlib
+#
+#
#
-# An includer may set ZLIB_ROOT to a zlib installation root to tell
-# this module where to look.
+# An includer may set ZLIB_ROOT to a zlib installation root to tell this
+# module where to look.
#=============================================================================
# Copyright 2001-2011 Kitware, Inc.
diff --git a/Modules/Findosg.cmake b/Modules/Findosg.cmake
index bc1e48a6e4..5ab2846fc8 100644
--- a/Modules/Findosg.cmake
+++ b/Modules/Findosg.cmake
@@ -1,31 +1,37 @@
+#.rst:
+# Findosg
+# -------
#
-# NOTE: It is highly recommended that you use the new FindOpenSceneGraph.cmake
-# introduced in CMake 2.6.3 and not use this Find module directly.
-#
-# This is part of the Findosg* suite used to find OpenSceneGraph components.
-# Each component is separate and you must opt in to each module. You must
-# also opt into OpenGL and OpenThreads (and Producer if needed) as these
-# modules won't do it for you. This is to allow you control over your own
-# system piece by piece in case you need to opt out of certain components
-# or change the Find behavior for a particular module (perhaps because the
-# default FindOpenGL.cmake module doesn't work with your system as an
-# example).
-# If you want to use a more convenient module that includes everything,
-# use the FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
-#
-# Locate osg
-# This module defines
-#
-# OSG_FOUND - Was the Osg found?
-# OSG_INCLUDE_DIR - Where to find the headers
-# OSG_LIBRARIES - The libraries to link against for the OSG (use this)
-#
-# OSG_LIBRARY - The OSG library
-# OSG_LIBRARY_DEBUG - The OSG debug library
-#
-# $OSGDIR is an environment variable that would
-# correspond to the ./configure --prefix=$OSGDIR
-# used in building osg.
+#
+#
+#
+#
+# NOTE: It is highly recommended that you use the new
+# FindOpenSceneGraph.cmake introduced in CMake 2.6.3 and not use this
+# Find module directly.
+#
+# This is part of the Findosg* suite used to find OpenSceneGraph
+# components. Each component is separate and you must opt in to each
+# module. You must also opt into OpenGL and OpenThreads (and Producer
+# if needed) as these modules won't do it for you. This is to allow you
+# control over your own system piece by piece in case you need to opt
+# out of certain components or change the Find behavior for a particular
+# module (perhaps because the default FindOpenGL.cmake module doesn't
+# work with your system as an example). If you want to use a more
+# convenient module that includes everything, use the
+# FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
+#
+# Locate osg This module defines
+#
+# OSG_FOUND - Was the Osg found? OSG_INCLUDE_DIR - Where to find the
+# headers OSG_LIBRARIES - The libraries to link against for the OSG (use
+# this)
+#
+# OSG_LIBRARY - The OSG library OSG_LIBRARY_DEBUG - The OSG debug
+# library
+#
+# $OSGDIR is an environment variable that would correspond to the
+# ./configure --prefix=$OSGDIR used in building osg.
#
# Created by Eric Wing.
diff --git a/Modules/FindosgAnimation.cmake b/Modules/FindosgAnimation.cmake
index 121aefcec9..403e68e767 100644
--- a/Modules/FindosgAnimation.cmake
+++ b/Modules/FindosgAnimation.cmake
@@ -1,27 +1,31 @@
-# This is part of the Findosg* suite used to find OpenSceneGraph components.
-# Each component is separate and you must opt in to each module. You must
-# also opt into OpenGL and OpenThreads (and Producer if needed) as these
-# modules won't do it for you. This is to allow you control over your own
-# system piece by piece in case you need to opt out of certain components
-# or change the Find behavior for a particular module (perhaps because the
-# default FindOpenGL.cmake module doesn't work with your system as an
-# example).
-# If you want to use a more convenient module that includes everything,
-# use the FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
-#
-# Locate osgAnimation
-# This module defines
-#
-# OSGANIMATION_FOUND - Was osgAnimation found?
-# OSGANIMATION_INCLUDE_DIR - Where to find the headers
-# OSGANIMATION_LIBRARIES - The libraries to link against for the OSG (use this)
-#
-# OSGANIMATION_LIBRARY - The OSG library
-# OSGANIMATION_LIBRARY_DEBUG - The OSG debug library
-#
-# $OSGDIR is an environment variable that would
-# correspond to the ./configure --prefix=$OSGDIR
-# used in building osg.
+#.rst:
+# FindosgAnimation
+# ----------------
+#
+#
+#
+# This is part of the Findosg* suite used to find OpenSceneGraph
+# components. Each component is separate and you must opt in to each
+# module. You must also opt into OpenGL and OpenThreads (and Producer
+# if needed) as these modules won't do it for you. This is to allow you
+# control over your own system piece by piece in case you need to opt
+# out of certain components or change the Find behavior for a particular
+# module (perhaps because the default FindOpenGL.cmake module doesn't
+# work with your system as an example). If you want to use a more
+# convenient module that includes everything, use the
+# FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
+#
+# Locate osgAnimation This module defines
+#
+# OSGANIMATION_FOUND - Was osgAnimation found? OSGANIMATION_INCLUDE_DIR
+# - Where to find the headers OSGANIMATION_LIBRARIES - The libraries to
+# link against for the OSG (use this)
+#
+# OSGANIMATION_LIBRARY - The OSG library OSGANIMATION_LIBRARY_DEBUG -
+# The OSG debug library
+#
+# $OSGDIR is an environment variable that would correspond to the
+# ./configure --prefix=$OSGDIR used in building osg.
#
# Created by Eric Wing.
diff --git a/Modules/FindosgDB.cmake b/Modules/FindosgDB.cmake
index 1ed94a1084..0e5bdef828 100644
--- a/Modules/FindosgDB.cmake
+++ b/Modules/FindosgDB.cmake
@@ -1,27 +1,31 @@
-# This is part of the Findosg* suite used to find OpenSceneGraph components.
-# Each component is separate and you must opt in to each module. You must
-# also opt into OpenGL and OpenThreads (and Producer if needed) as these
-# modules won't do it for you. This is to allow you control over your own
-# system piece by piece in case you need to opt out of certain components
-# or change the Find behavior for a particular module (perhaps because the
-# default FindOpenGL.cmake module doesn't work with your system as an
-# example).
-# If you want to use a more convenient module that includes everything,
-# use the FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
-#
-# Locate osgDB
-# This module defines
-#
-# OSGDB_FOUND - Was osgDB found?
-# OSGDB_INCLUDE_DIR - Where to find the headers
-# OSGDB_LIBRARIES - The libraries to link against for the osgDB (use this)
-#
-# OSGDB_LIBRARY - The osgDB library
-# OSGDB_LIBRARY_DEBUG - The osgDB debug library
-#
-# $OSGDIR is an environment variable that would
-# correspond to the ./configure --prefix=$OSGDIR
-# used in building osg.
+#.rst:
+# FindosgDB
+# ---------
+#
+#
+#
+# This is part of the Findosg* suite used to find OpenSceneGraph
+# components. Each component is separate and you must opt in to each
+# module. You must also opt into OpenGL and OpenThreads (and Producer
+# if needed) as these modules won't do it for you. This is to allow you
+# control over your own system piece by piece in case you need to opt
+# out of certain components or change the Find behavior for a particular
+# module (perhaps because the default FindOpenGL.cmake module doesn't
+# work with your system as an example). If you want to use a more
+# convenient module that includes everything, use the
+# FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
+#
+# Locate osgDB This module defines
+#
+# OSGDB_FOUND - Was osgDB found? OSGDB_INCLUDE_DIR - Where to find the
+# headers OSGDB_LIBRARIES - The libraries to link against for the osgDB
+# (use this)
+#
+# OSGDB_LIBRARY - The osgDB library OSGDB_LIBRARY_DEBUG - The osgDB
+# debug library
+#
+# $OSGDIR is an environment variable that would correspond to the
+# ./configure --prefix=$OSGDIR used in building osg.
#
# Created by Eric Wing.
diff --git a/Modules/FindosgFX.cmake b/Modules/FindosgFX.cmake
index 1f1d59f465..7b2cb76c1c 100644
--- a/Modules/FindosgFX.cmake
+++ b/Modules/FindosgFX.cmake
@@ -1,27 +1,31 @@
-# This is part of the Findosg* suite used to find OpenSceneGraph components.
-# Each component is separate and you must opt in to each module. You must
-# also opt into OpenGL and OpenThreads (and Producer if needed) as these
-# modules won't do it for you. This is to allow you control over your own
-# system piece by piece in case you need to opt out of certain components
-# or change the Find behavior for a particular module (perhaps because the
-# default FindOpenGL.cmake module doesn't work with your system as an
-# example).
-# If you want to use a more convenient module that includes everything,
-# use the FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
-#
-# Locate osgFX
-# This module defines
-#
-# OSGFX_FOUND - Was osgFX found?
-# OSGFX_INCLUDE_DIR - Where to find the headers
-# OSGFX_LIBRARIES - The libraries to link against for the osgFX (use this)
-#
-# OSGFX_LIBRARY - The osgFX library
-# OSGFX_LIBRARY_DEBUG - The osgFX debug library
-#
-# $OSGDIR is an environment variable that would
-# correspond to the ./configure --prefix=$OSGDIR
-# used in building osg.
+#.rst:
+# FindosgFX
+# ---------
+#
+#
+#
+# This is part of the Findosg* suite used to find OpenSceneGraph
+# components. Each component is separate and you must opt in to each
+# module. You must also opt into OpenGL and OpenThreads (and Producer
+# if needed) as these modules won't do it for you. This is to allow you
+# control over your own system piece by piece in case you need to opt
+# out of certain components or change the Find behavior for a particular
+# module (perhaps because the default FindOpenGL.cmake module doesn't
+# work with your system as an example). If you want to use a more
+# convenient module that includes everything, use the
+# FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
+#
+# Locate osgFX This module defines
+#
+# OSGFX_FOUND - Was osgFX found? OSGFX_INCLUDE_DIR - Where to find the
+# headers OSGFX_LIBRARIES - The libraries to link against for the osgFX
+# (use this)
+#
+# OSGFX_LIBRARY - The osgFX library OSGFX_LIBRARY_DEBUG - The osgFX
+# debug library
+#
+# $OSGDIR is an environment variable that would correspond to the
+# ./configure --prefix=$OSGDIR used in building osg.
#
# Created by Eric Wing.
diff --git a/Modules/FindosgGA.cmake b/Modules/FindosgGA.cmake
index e60f7f5a74..2e80ff2fa1 100644
--- a/Modules/FindosgGA.cmake
+++ b/Modules/FindosgGA.cmake
@@ -1,27 +1,31 @@
-# This is part of the Findosg* suite used to find OpenSceneGraph components.
-# Each component is separate and you must opt in to each module. You must
-# also opt into OpenGL and OpenThreads (and Producer if needed) as these
-# modules won't do it for you. This is to allow you control over your own
-# system piece by piece in case you need to opt out of certain components
-# or change the Find behavior for a particular module (perhaps because the
-# default FindOpenGL.cmake module doesn't work with your system as an
-# example).
-# If you want to use a more convenient module that includes everything,
-# use the FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
-#
-# Locate osgGA
-# This module defines
-#
-# OSGGA_FOUND - Was osgGA found?
-# OSGGA_INCLUDE_DIR - Where to find the headers
-# OSGGA_LIBRARIES - The libraries to link against for the osgGA (use this)
-#
-# OSGGA_LIBRARY - The osgGA library
-# OSGGA_LIBRARY_DEBUG - The osgGA debug library
-#
-# $OSGDIR is an environment variable that would
-# correspond to the ./configure --prefix=$OSGDIR
-# used in building osg.
+#.rst:
+# FindosgGA
+# ---------
+#
+#
+#
+# This is part of the Findosg* suite used to find OpenSceneGraph
+# components. Each component is separate and you must opt in to each
+# module. You must also opt into OpenGL and OpenThreads (and Producer
+# if needed) as these modules won't do it for you. This is to allow you
+# control over your own system piece by piece in case you need to opt
+# out of certain components or change the Find behavior for a particular
+# module (perhaps because the default FindOpenGL.cmake module doesn't
+# work with your system as an example). If you want to use a more
+# convenient module that includes everything, use the
+# FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
+#
+# Locate osgGA This module defines
+#
+# OSGGA_FOUND - Was osgGA found? OSGGA_INCLUDE_DIR - Where to find the
+# headers OSGGA_LIBRARIES - The libraries to link against for the osgGA
+# (use this)
+#
+# OSGGA_LIBRARY - The osgGA library OSGGA_LIBRARY_DEBUG - The osgGA
+# debug library
+#
+# $OSGDIR is an environment variable that would correspond to the
+# ./configure --prefix=$OSGDIR used in building osg.
#
# Created by Eric Wing.
diff --git a/Modules/FindosgIntrospection.cmake b/Modules/FindosgIntrospection.cmake
index a430ad6e91..1b52a6a240 100644
--- a/Modules/FindosgIntrospection.cmake
+++ b/Modules/FindosgIntrospection.cmake
@@ -1,27 +1,32 @@
-# This is part of the Findosg* suite used to find OpenSceneGraph components.
-# Each component is separate and you must opt in to each module. You must
-# also opt into OpenGL and OpenThreads (and Producer if needed) as these
-# modules won't do it for you. This is to allow you control over your own
-# system piece by piece in case you need to opt out of certain components
-# or change the Find behavior for a particular module (perhaps because the
-# default FindOpenGL.cmake module doesn't work with your system as an
-# example).
-# If you want to use a more convenient module that includes everything,
-# use the FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
-#
-# Locate osgINTROSPECTION
-# This module defines
+#.rst:
+# FindosgIntrospection
+# --------------------
+#
+#
+#
+# This is part of the Findosg* suite used to find OpenSceneGraph
+# components. Each component is separate and you must opt in to each
+# module. You must also opt into OpenGL and OpenThreads (and Producer
+# if needed) as these modules won't do it for you. This is to allow you
+# control over your own system piece by piece in case you need to opt
+# out of certain components or change the Find behavior for a particular
+# module (perhaps because the default FindOpenGL.cmake module doesn't
+# work with your system as an example). If you want to use a more
+# convenient module that includes everything, use the
+# FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
+#
+# Locate osgINTROSPECTION This module defines
#
# OSGINTROSPECTION_FOUND - Was osgIntrospection found?
# OSGINTROSPECTION_INCLUDE_DIR - Where to find the headers
-# OSGINTROSPECTION_LIBRARIES - The libraries to link for osgIntrospection (use this)
+# OSGINTROSPECTION_LIBRARIES - The libraries to link for
+# osgIntrospection (use this)
#
# OSGINTROSPECTION_LIBRARY - The osgIntrospection library
# OSGINTROSPECTION_LIBRARY_DEBUG - The osgIntrospection debug library
#
-# $OSGDIR is an environment variable that would
-# correspond to the ./configure --prefix=$OSGDIR
-# used in building osg.
+# $OSGDIR is an environment variable that would correspond to the
+# ./configure --prefix=$OSGDIR used in building osg.
#
# Created by Eric Wing.
diff --git a/Modules/FindosgManipulator.cmake b/Modules/FindosgManipulator.cmake
index 32d6def7bc..6f5408241d 100644
--- a/Modules/FindosgManipulator.cmake
+++ b/Modules/FindosgManipulator.cmake
@@ -1,27 +1,32 @@
-# This is part of the Findosg* suite used to find OpenSceneGraph components.
-# Each component is separate and you must opt in to each module. You must
-# also opt into OpenGL and OpenThreads (and Producer if needed) as these
-# modules won't do it for you. This is to allow you control over your own
-# system piece by piece in case you need to opt out of certain components
-# or change the Find behavior for a particular module (perhaps because the
-# default FindOpenGL.cmake module doesn't work with your system as an
-# example).
-# If you want to use a more convenient module that includes everything,
-# use the FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
-#
-# Locate osgManipulator
-# This module defines
+#.rst:
+# FindosgManipulator
+# ------------------
+#
+#
+#
+# This is part of the Findosg* suite used to find OpenSceneGraph
+# components. Each component is separate and you must opt in to each
+# module. You must also opt into OpenGL and OpenThreads (and Producer
+# if needed) as these modules won't do it for you. This is to allow you
+# control over your own system piece by piece in case you need to opt
+# out of certain components or change the Find behavior for a particular
+# module (perhaps because the default FindOpenGL.cmake module doesn't
+# work with your system as an example). If you want to use a more
+# convenient module that includes everything, use the
+# FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
+#
+# Locate osgManipulator This module defines
#
# OSGMANIPULATOR_FOUND - Was osgManipulator found?
# OSGMANIPULATOR_INCLUDE_DIR - Where to find the headers
-# OSGMANIPULATOR_LIBRARIES - The libraries to link for osgManipulator (use this)
+# OSGMANIPULATOR_LIBRARIES - The libraries to link for osgManipulator
+# (use this)
#
# OSGMANIPULATOR_LIBRARY - The osgManipulator library
# OSGMANIPULATOR_LIBRARY_DEBUG - The osgManipulator debug library
#
-# $OSGDIR is an environment variable that would
-# correspond to the ./configure --prefix=$OSGDIR
-# used in building osg.
+# $OSGDIR is an environment variable that would correspond to the
+# ./configure --prefix=$OSGDIR used in building osg.
#
# Created by Eric Wing.
diff --git a/Modules/FindosgParticle.cmake b/Modules/FindosgParticle.cmake
index 1a6ae0b932..82e9a13649 100644
--- a/Modules/FindosgParticle.cmake
+++ b/Modules/FindosgParticle.cmake
@@ -1,27 +1,31 @@
-# This is part of the Findosg* suite used to find OpenSceneGraph components.
-# Each component is separate and you must opt in to each module. You must
-# also opt into OpenGL and OpenThreads (and Producer if needed) as these
-# modules won't do it for you. This is to allow you control over your own
-# system piece by piece in case you need to opt out of certain components
-# or change the Find behavior for a particular module (perhaps because the
-# default FindOpenGL.cmake module doesn't work with your system as an
-# example).
-# If you want to use a more convenient module that includes everything,
-# use the FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
-#
-# Locate osgParticle
-# This module defines
-#
-# OSGPARTICLE_FOUND - Was osgParticle found?
-# OSGPARTICLE_INCLUDE_DIR - Where to find the headers
-# OSGPARTICLE_LIBRARIES - The libraries to link for osgParticle (use this)
+#.rst:
+# FindosgParticle
+# ---------------
+#
+#
+#
+# This is part of the Findosg* suite used to find OpenSceneGraph
+# components. Each component is separate and you must opt in to each
+# module. You must also opt into OpenGL and OpenThreads (and Producer
+# if needed) as these modules won't do it for you. This is to allow you
+# control over your own system piece by piece in case you need to opt
+# out of certain components or change the Find behavior for a particular
+# module (perhaps because the default FindOpenGL.cmake module doesn't
+# work with your system as an example). If you want to use a more
+# convenient module that includes everything, use the
+# FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
+#
+# Locate osgParticle This module defines
+#
+# OSGPARTICLE_FOUND - Was osgParticle found? OSGPARTICLE_INCLUDE_DIR -
+# Where to find the headers OSGPARTICLE_LIBRARIES - The libraries to
+# link for osgParticle (use this)
#
# OSGPARTICLE_LIBRARY - The osgParticle library
# OSGPARTICLE_LIBRARY_DEBUG - The osgParticle debug library
#
-# $OSGDIR is an environment variable that would
-# correspond to the ./configure --prefix=$OSGDIR
-# used in building osg.
+# $OSGDIR is an environment variable that would correspond to the
+# ./configure --prefix=$OSGDIR used in building osg.
#
# Created by Eric Wing.
diff --git a/Modules/FindosgPresentation.cmake b/Modules/FindosgPresentation.cmake
index 412502a8c9..1cd57b3012 100644
--- a/Modules/FindosgPresentation.cmake
+++ b/Modules/FindosgPresentation.cmake
@@ -1,30 +1,35 @@
-# This is part of the Findosg* suite used to find OpenSceneGraph components.
-# Each component is separate and you must opt in to each module. You must
-# also opt into OpenGL and OpenThreads (and Producer if needed) as these
-# modules won't do it for you. This is to allow you control over your own
-# system piece by piece in case you need to opt out of certain components
-# or change the Find behavior for a particular module (perhaps because the
-# default FindOpenGL.cmake module doesn't work with your system as an
-# example).
-# If you want to use a more convenient module that includes everything,
-# use the FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
-#
-# Locate osgPresentation
-# This module defines
+#.rst:
+# FindosgPresentation
+# -------------------
+#
+#
+#
+# This is part of the Findosg* suite used to find OpenSceneGraph
+# components. Each component is separate and you must opt in to each
+# module. You must also opt into OpenGL and OpenThreads (and Producer
+# if needed) as these modules won't do it for you. This is to allow you
+# control over your own system piece by piece in case you need to opt
+# out of certain components or change the Find behavior for a particular
+# module (perhaps because the default FindOpenGL.cmake module doesn't
+# work with your system as an example). If you want to use a more
+# convenient module that includes everything, use the
+# FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
+#
+# Locate osgPresentation This module defines
#
# OSGPRESENTATION_FOUND - Was osgPresentation found?
# OSGPRESENTATION_INCLUDE_DIR - Where to find the headers
-# OSGPRESENTATION_LIBRARIES - The libraries to link for osgPresentation (use this)
+# OSGPRESENTATION_LIBRARIES - The libraries to link for osgPresentation
+# (use this)
#
# OSGPRESENTATION_LIBRARY - The osgPresentation library
# OSGPRESENTATION_LIBRARY_DEBUG - The osgPresentation debug library
#
-# $OSGDIR is an environment variable that would
-# correspond to the ./configure --prefix=$OSGDIR
-# used in building osg.
+# $OSGDIR is an environment variable that would correspond to the
+# ./configure --prefix=$OSGDIR used in building osg.
#
-# Created by Eric Wing.
-# Modified to work with osgPresentation by Robert Osfield, January 2012.
+# Created by Eric Wing. Modified to work with osgPresentation by Robert
+# Osfield, January 2012.
#=============================================================================
# Copyright 2007-2009 Kitware, Inc.
diff --git a/Modules/FindosgProducer.cmake b/Modules/FindosgProducer.cmake
index ea561a0362..ad4902b867 100644
--- a/Modules/FindosgProducer.cmake
+++ b/Modules/FindosgProducer.cmake
@@ -1,27 +1,31 @@
-# This is part of the Findosg* suite used to find OpenSceneGraph components.
-# Each component is separate and you must opt in to each module. You must
-# also opt into OpenGL and OpenThreads (and Producer if needed) as these
-# modules won't do it for you. This is to allow you control over your own
-# system piece by piece in case you need to opt out of certain components
-# or change the Find behavior for a particular module (perhaps because the
-# default FindOpenGL.cmake module doesn't work with your system as an
-# example).
-# If you want to use a more convenient module that includes everything,
-# use the FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
-#
-# Locate osgProducer
-# This module defines
-#
-# OSGPRODUCER_FOUND - Was osgProducer found?
-# OSGPRODUCER_INCLUDE_DIR - Where to find the headers
-# OSGPRODUCER_LIBRARIES - The libraries to link for osgProducer (use this)
+#.rst:
+# FindosgProducer
+# ---------------
+#
+#
+#
+# This is part of the Findosg* suite used to find OpenSceneGraph
+# components. Each component is separate and you must opt in to each
+# module. You must also opt into OpenGL and OpenThreads (and Producer
+# if needed) as these modules won't do it for you. This is to allow you
+# control over your own system piece by piece in case you need to opt
+# out of certain components or change the Find behavior for a particular
+# module (perhaps because the default FindOpenGL.cmake module doesn't
+# work with your system as an example). If you want to use a more
+# convenient module that includes everything, use the
+# FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
+#
+# Locate osgProducer This module defines
+#
+# OSGPRODUCER_FOUND - Was osgProducer found? OSGPRODUCER_INCLUDE_DIR -
+# Where to find the headers OSGPRODUCER_LIBRARIES - The libraries to
+# link for osgProducer (use this)
#
# OSGPRODUCER_LIBRARY - The osgProducer library
# OSGPRODUCER_LIBRARY_DEBUG - The osgProducer debug library
#
-# $OSGDIR is an environment variable that would
-# correspond to the ./configure --prefix=$OSGDIR
-# used in building osg.
+# $OSGDIR is an environment variable that would correspond to the
+# ./configure --prefix=$OSGDIR used in building osg.
#
# Created by Eric Wing.
diff --git a/Modules/FindosgQt.cmake b/Modules/FindosgQt.cmake
index c7e8fee642..b5c1718c81 100644
--- a/Modules/FindosgQt.cmake
+++ b/Modules/FindosgQt.cmake
@@ -1,30 +1,33 @@
-# This is part of the Findosg* suite used to find OpenSceneGraph components.
-# Each component is separate and you must opt in to each module. You must
-# also opt into OpenGL and OpenThreads (and Producer if needed) as these
-# modules won't do it for you. This is to allow you control over your own
-# system piece by piece in case you need to opt out of certain components
-# or change the Find behavior for a particular module (perhaps because the
-# default FindOpenGL.cmake module doesn't work with your system as an
-# example).
-# If you want to use a more convenient module that includes everything,
-# use the FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
-#
-# Locate osgQt
-# This module defines
-#
-# OSGQT_FOUND - Was osgQt found?
-# OSGQT_INCLUDE_DIR - Where to find the headers
-# OSGQT_LIBRARIES - The libraries to link for osgQt (use this)
-#
-# OSGQT_LIBRARY - The osgQt library
-# OSGQT_LIBRARY_DEBUG - The osgQt debug library
-#
-# $OSGDIR is an environment variable that would
-# correspond to the ./configure --prefix=$OSGDIR
-# used in building osg.
-#
-# Created by Eric Wing.
-# Modified to work with osgQt by Robert Osfield, January 2012.
+#.rst:
+# FindosgQt
+# ---------
+#
+#
+#
+# This is part of the Findosg* suite used to find OpenSceneGraph
+# components. Each component is separate and you must opt in to each
+# module. You must also opt into OpenGL and OpenThreads (and Producer
+# if needed) as these modules won't do it for you. This is to allow you
+# control over your own system piece by piece in case you need to opt
+# out of certain components or change the Find behavior for a particular
+# module (perhaps because the default FindOpenGL.cmake module doesn't
+# work with your system as an example). If you want to use a more
+# convenient module that includes everything, use the
+# FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
+#
+# Locate osgQt This module defines
+#
+# OSGQT_FOUND - Was osgQt found? OSGQT_INCLUDE_DIR - Where to find the
+# headers OSGQT_LIBRARIES - The libraries to link for osgQt (use this)
+#
+# OSGQT_LIBRARY - The osgQt library OSGQT_LIBRARY_DEBUG - The osgQt
+# debug library
+#
+# $OSGDIR is an environment variable that would correspond to the
+# ./configure --prefix=$OSGDIR used in building osg.
+#
+# Created by Eric Wing. Modified to work with osgQt by Robert Osfield,
+# January 2012.
#=============================================================================
# Copyright 2007-2009 Kitware, Inc.
diff --git a/Modules/FindosgShadow.cmake b/Modules/FindosgShadow.cmake
index f3be0bfdfd..b0d22e7af4 100644
--- a/Modules/FindosgShadow.cmake
+++ b/Modules/FindosgShadow.cmake
@@ -1,27 +1,31 @@
-# This is part of the Findosg* suite used to find OpenSceneGraph components.
-# Each component is separate and you must opt in to each module. You must
-# also opt into OpenGL and OpenThreads (and Producer if needed) as these
-# modules won't do it for you. This is to allow you control over your own
-# system piece by piece in case you need to opt out of certain components
-# or change the Find behavior for a particular module (perhaps because the
-# default FindOpenGL.cmake module doesn't work with your system as an
-# example).
-# If you want to use a more convenient module that includes everything,
-# use the FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
-#
-# Locate osgShadow
-# This module defines
-#
-# OSGSHADOW_FOUND - Was osgShadow found?
-# OSGSHADOW_INCLUDE_DIR - Where to find the headers
-# OSGSHADOW_LIBRARIES - The libraries to link for osgShadow (use this)
-#
-# OSGSHADOW_LIBRARY - The osgShadow library
-# OSGSHADOW_LIBRARY_DEBUG - The osgShadow debug library
-#
-# $OSGDIR is an environment variable that would
-# correspond to the ./configure --prefix=$OSGDIR
-# used in building osg.
+#.rst:
+# FindosgShadow
+# -------------
+#
+#
+#
+# This is part of the Findosg* suite used to find OpenSceneGraph
+# components. Each component is separate and you must opt in to each
+# module. You must also opt into OpenGL and OpenThreads (and Producer
+# if needed) as these modules won't do it for you. This is to allow you
+# control over your own system piece by piece in case you need to opt
+# out of certain components or change the Find behavior for a particular
+# module (perhaps because the default FindOpenGL.cmake module doesn't
+# work with your system as an example). If you want to use a more
+# convenient module that includes everything, use the
+# FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
+#
+# Locate osgShadow This module defines
+#
+# OSGSHADOW_FOUND - Was osgShadow found? OSGSHADOW_INCLUDE_DIR - Where
+# to find the headers OSGSHADOW_LIBRARIES - The libraries to link for
+# osgShadow (use this)
+#
+# OSGSHADOW_LIBRARY - The osgShadow library OSGSHADOW_LIBRARY_DEBUG -
+# The osgShadow debug library
+#
+# $OSGDIR is an environment variable that would correspond to the
+# ./configure --prefix=$OSGDIR used in building osg.
#
# Created by Eric Wing.
diff --git a/Modules/FindosgSim.cmake b/Modules/FindosgSim.cmake
index 19cd17582b..ce088dc6d2 100644
--- a/Modules/FindosgSim.cmake
+++ b/Modules/FindosgSim.cmake
@@ -1,27 +1,31 @@
-# This is part of the Findosg* suite used to find OpenSceneGraph components.
-# Each component is separate and you must opt in to each module. You must
-# also opt into OpenGL and OpenThreads (and Producer if needed) as these
-# modules won't do it for you. This is to allow you control over your own
-# system piece by piece in case you need to opt out of certain components
-# or change the Find behavior for a particular module (perhaps because the
-# default FindOpenGL.cmake module doesn't work with your system as an
-# example).
-# If you want to use a more convenient module that includes everything,
-# use the FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
-#
-# Locate osgSim
-# This module defines
-#
-# OSGSIM_FOUND - Was osgSim found?
-# OSGSIM_INCLUDE_DIR - Where to find the headers
-# OSGSIM_LIBRARIES - The libraries to link for osgSim (use this)
-#
-# OSGSIM_LIBRARY - The osgSim library
-# OSGSIM_LIBRARY_DEBUG - The osgSim debug library
-#
-# $OSGDIR is an environment variable that would
-# correspond to the ./configure --prefix=$OSGDIR
-# used in building osg.
+#.rst:
+# FindosgSim
+# ----------
+#
+#
+#
+# This is part of the Findosg* suite used to find OpenSceneGraph
+# components. Each component is separate and you must opt in to each
+# module. You must also opt into OpenGL and OpenThreads (and Producer
+# if needed) as these modules won't do it for you. This is to allow you
+# control over your own system piece by piece in case you need to opt
+# out of certain components or change the Find behavior for a particular
+# module (perhaps because the default FindOpenGL.cmake module doesn't
+# work with your system as an example). If you want to use a more
+# convenient module that includes everything, use the
+# FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
+#
+# Locate osgSim This module defines
+#
+# OSGSIM_FOUND - Was osgSim found? OSGSIM_INCLUDE_DIR - Where to find
+# the headers OSGSIM_LIBRARIES - The libraries to link for osgSim (use
+# this)
+#
+# OSGSIM_LIBRARY - The osgSim library OSGSIM_LIBRARY_DEBUG - The osgSim
+# debug library
+#
+# $OSGDIR is an environment variable that would correspond to the
+# ./configure --prefix=$OSGDIR used in building osg.
#
# Created by Eric Wing.
diff --git a/Modules/FindosgTerrain.cmake b/Modules/FindosgTerrain.cmake
index 4b7249e62e..bfde773ef6 100644
--- a/Modules/FindosgTerrain.cmake
+++ b/Modules/FindosgTerrain.cmake
@@ -1,27 +1,31 @@
-# This is part of the Findosg* suite used to find OpenSceneGraph components.
-# Each component is separate and you must opt in to each module. You must
-# also opt into OpenGL and OpenThreads (and Producer if needed) as these
-# modules won't do it for you. This is to allow you control over your own
-# system piece by piece in case you need to opt out of certain components
-# or change the Find behavior for a particular module (perhaps because the
-# default FindOpenGL.cmake module doesn't work with your system as an
-# example).
-# If you want to use a more convenient module that includes everything,
-# use the FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
-#
-# Locate osgTerrain
-# This module defines
-#
-# OSGTERRAIN_FOUND - Was osgTerrain found?
-# OSGTERRAIN_INCLUDE_DIR - Where to find the headers
-# OSGTERRAIN_LIBRARIES - The libraries to link for osgTerrain (use this)
-#
-# OSGTERRAIN_LIBRARY - The osgTerrain library
-# OSGTERRAIN_LIBRARY_DEBUG - The osgTerrain debug library
-#
-# $OSGDIR is an environment variable that would
-# correspond to the ./configure --prefix=$OSGDIR
-# used in building osg.
+#.rst:
+# FindosgTerrain
+# --------------
+#
+#
+#
+# This is part of the Findosg* suite used to find OpenSceneGraph
+# components. Each component is separate and you must opt in to each
+# module. You must also opt into OpenGL and OpenThreads (and Producer
+# if needed) as these modules won't do it for you. This is to allow you
+# control over your own system piece by piece in case you need to opt
+# out of certain components or change the Find behavior for a particular
+# module (perhaps because the default FindOpenGL.cmake module doesn't
+# work with your system as an example). If you want to use a more
+# convenient module that includes everything, use the
+# FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
+#
+# Locate osgTerrain This module defines
+#
+# OSGTERRAIN_FOUND - Was osgTerrain found? OSGTERRAIN_INCLUDE_DIR -
+# Where to find the headers OSGTERRAIN_LIBRARIES - The libraries to link
+# for osgTerrain (use this)
+#
+# OSGTERRAIN_LIBRARY - The osgTerrain library OSGTERRAIN_LIBRARY_DEBUG -
+# The osgTerrain debug library
+#
+# $OSGDIR is an environment variable that would correspond to the
+# ./configure --prefix=$OSGDIR used in building osg.
#
# Created by Eric Wing.
diff --git a/Modules/FindosgText.cmake b/Modules/FindosgText.cmake
index 41683c728e..32cd115c19 100644
--- a/Modules/FindosgText.cmake
+++ b/Modules/FindosgText.cmake
@@ -1,27 +1,31 @@
-# This is part of the Findosg* suite used to find OpenSceneGraph components.
-# Each component is separate and you must opt in to each module. You must
-# also opt into OpenGL and OpenThreads (and Producer if needed) as these
-# modules won't do it for you. This is to allow you control over your own
-# system piece by piece in case you need to opt out of certain components
-# or change the Find behavior for a particular module (perhaps because the
-# default FindOpenGL.cmake module doesn't work with your system as an
-# example).
-# If you want to use a more convenient module that includes everything,
-# use the FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
-#
-# Locate osgText
-# This module defines
-#
-# OSGTEXT_FOUND - Was osgText found?
-# OSGTEXT_INCLUDE_DIR - Where to find the headers
-# OSGTEXT_LIBRARIES - The libraries to link for osgText (use this)
-#
-# OSGTEXT_LIBRARY - The osgText library
-# OSGTEXT_LIBRARY_DEBUG - The osgText debug library
-#
-# $OSGDIR is an environment variable that would
-# correspond to the ./configure --prefix=$OSGDIR
-# used in building osg.
+#.rst:
+# FindosgText
+# -----------
+#
+#
+#
+# This is part of the Findosg* suite used to find OpenSceneGraph
+# components. Each component is separate and you must opt in to each
+# module. You must also opt into OpenGL and OpenThreads (and Producer
+# if needed) as these modules won't do it for you. This is to allow you
+# control over your own system piece by piece in case you need to opt
+# out of certain components or change the Find behavior for a particular
+# module (perhaps because the default FindOpenGL.cmake module doesn't
+# work with your system as an example). If you want to use a more
+# convenient module that includes everything, use the
+# FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
+#
+# Locate osgText This module defines
+#
+# OSGTEXT_FOUND - Was osgText found? OSGTEXT_INCLUDE_DIR - Where to find
+# the headers OSGTEXT_LIBRARIES - The libraries to link for osgText (use
+# this)
+#
+# OSGTEXT_LIBRARY - The osgText library OSGTEXT_LIBRARY_DEBUG - The
+# osgText debug library
+#
+# $OSGDIR is an environment variable that would correspond to the
+# ./configure --prefix=$OSGDIR used in building osg.
#
# Created by Eric Wing.
diff --git a/Modules/FindosgUtil.cmake b/Modules/FindosgUtil.cmake
index 85c117723c..97974255c8 100644
--- a/Modules/FindosgUtil.cmake
+++ b/Modules/FindosgUtil.cmake
@@ -1,27 +1,31 @@
-# This is part of the Findosg* suite used to find OpenSceneGraph components.
-# Each component is separate and you must opt in to each module. You must
-# also opt into OpenGL and OpenThreads (and Producer if needed) as these
-# modules won't do it for you. This is to allow you control over your own
-# system piece by piece in case you need to opt out of certain components
-# or change the Find behavior for a particular module (perhaps because the
-# default FindOpenGL.cmake module doesn't work with your system as an
-# example).
-# If you want to use a more convenient module that includes everything,
-# use the FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
-#
-# Locate osgUtil
-# This module defines
-#
-# OSGUTIL_FOUND - Was osgUtil found?
-# OSGUTIL_INCLUDE_DIR - Where to find the headers
-# OSGUTIL_LIBRARIES - The libraries to link for osgUtil (use this)
-#
-# OSGUTIL_LIBRARY - The osgUtil library
-# OSGUTIL_LIBRARY_DEBUG - The osgUtil debug library
-#
-# $OSGDIR is an environment variable that would
-# correspond to the ./configure --prefix=$OSGDIR
-# used in building osg.
+#.rst:
+# FindosgUtil
+# -----------
+#
+#
+#
+# This is part of the Findosg* suite used to find OpenSceneGraph
+# components. Each component is separate and you must opt in to each
+# module. You must also opt into OpenGL and OpenThreads (and Producer
+# if needed) as these modules won't do it for you. This is to allow you
+# control over your own system piece by piece in case you need to opt
+# out of certain components or change the Find behavior for a particular
+# module (perhaps because the default FindOpenGL.cmake module doesn't
+# work with your system as an example). If you want to use a more
+# convenient module that includes everything, use the
+# FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
+#
+# Locate osgUtil This module defines
+#
+# OSGUTIL_FOUND - Was osgUtil found? OSGUTIL_INCLUDE_DIR - Where to find
+# the headers OSGUTIL_LIBRARIES - The libraries to link for osgUtil (use
+# this)
+#
+# OSGUTIL_LIBRARY - The osgUtil library OSGUTIL_LIBRARY_DEBUG - The
+# osgUtil debug library
+#
+# $OSGDIR is an environment variable that would correspond to the
+# ./configure --prefix=$OSGDIR used in building osg.
#
# Created by Eric Wing.
diff --git a/Modules/FindosgViewer.cmake b/Modules/FindosgViewer.cmake
index d2252f4df4..b3555302d5 100644
--- a/Modules/FindosgViewer.cmake
+++ b/Modules/FindosgViewer.cmake
@@ -1,27 +1,31 @@
-# This is part of the Findosg* suite used to find OpenSceneGraph components.
-# Each component is separate and you must opt in to each module. You must
-# also opt into OpenGL and OpenThreads (and Producer if needed) as these
-# modules won't do it for you. This is to allow you control over your own
-# system piece by piece in case you need to opt out of certain components
-# or change the Find behavior for a particular module (perhaps because the
-# default FindOpenGL.cmake module doesn't work with your system as an
-# example).
-# If you want to use a more convenient module that includes everything,
-# use the FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
-#
-# Locate osgViewer
-# This module defines
-#
-# OSGVIEWER_FOUND - Was osgViewer found?
-# OSGVIEWER_INCLUDE_DIR - Where to find the headers
-# OSGVIEWER_LIBRARIES - The libraries to link for osgViewer (use this)
-#
-# OSGVIEWER_LIBRARY - The osgViewer library
-# OSGVIEWER_LIBRARY_DEBUG - The osgViewer debug library
-#
-# $OSGDIR is an environment variable that would
-# correspond to the ./configure --prefix=$OSGDIR
-# used in building osg.
+#.rst:
+# FindosgViewer
+# -------------
+#
+#
+#
+# This is part of the Findosg* suite used to find OpenSceneGraph
+# components. Each component is separate and you must opt in to each
+# module. You must also opt into OpenGL and OpenThreads (and Producer
+# if needed) as these modules won't do it for you. This is to allow you
+# control over your own system piece by piece in case you need to opt
+# out of certain components or change the Find behavior for a particular
+# module (perhaps because the default FindOpenGL.cmake module doesn't
+# work with your system as an example). If you want to use a more
+# convenient module that includes everything, use the
+# FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
+#
+# Locate osgViewer This module defines
+#
+# OSGVIEWER_FOUND - Was osgViewer found? OSGVIEWER_INCLUDE_DIR - Where
+# to find the headers OSGVIEWER_LIBRARIES - The libraries to link for
+# osgViewer (use this)
+#
+# OSGVIEWER_LIBRARY - The osgViewer library OSGVIEWER_LIBRARY_DEBUG -
+# The osgViewer debug library
+#
+# $OSGDIR is an environment variable that would correspond to the
+# ./configure --prefix=$OSGDIR used in building osg.
#
# Created by Eric Wing.
diff --git a/Modules/FindosgVolume.cmake b/Modules/FindosgVolume.cmake
index ae2d95c399..8d3ad6c5d1 100644
--- a/Modules/FindosgVolume.cmake
+++ b/Modules/FindosgVolume.cmake
@@ -1,27 +1,31 @@
-# This is part of the Findosg* suite used to find OpenSceneGraph components.
-# Each component is separate and you must opt in to each module. You must
-# also opt into OpenGL and OpenThreads (and Producer if needed) as these
-# modules won't do it for you. This is to allow you control over your own
-# system piece by piece in case you need to opt out of certain components
-# or change the Find behavior for a particular module (perhaps because the
-# default FindOpenGL.cmake module doesn't work with your system as an
-# example).
-# If you want to use a more convenient module that includes everything,
-# use the FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
-#
-# Locate osgVolume
-# This module defines
-#
-# OSGVOLUME_FOUND - Was osgVolume found?
-# OSGVOLUME_INCLUDE_DIR - Where to find the headers
-# OSGVOLUME_LIBRARIES - The libraries to link for osgVolume (use this)
-#
-# OSGVOLUME_LIBRARY - The osgVolume library
-# OSGVOLUME_LIBRARY_DEBUG - The osgVolume debug library
-#
-# $OSGDIR is an environment variable that would
-# correspond to the ./configure --prefix=$OSGDIR
-# used in building osg.
+#.rst:
+# FindosgVolume
+# -------------
+#
+#
+#
+# This is part of the Findosg* suite used to find OpenSceneGraph
+# components. Each component is separate and you must opt in to each
+# module. You must also opt into OpenGL and OpenThreads (and Producer
+# if needed) as these modules won't do it for you. This is to allow you
+# control over your own system piece by piece in case you need to opt
+# out of certain components or change the Find behavior for a particular
+# module (perhaps because the default FindOpenGL.cmake module doesn't
+# work with your system as an example). If you want to use a more
+# convenient module that includes everything, use the
+# FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
+#
+# Locate osgVolume This module defines
+#
+# OSGVOLUME_FOUND - Was osgVolume found? OSGVOLUME_INCLUDE_DIR - Where
+# to find the headers OSGVOLUME_LIBRARIES - The libraries to link for
+# osgVolume (use this)
+#
+# OSGVOLUME_LIBRARY - The osgVolume library OSGVOLUME_LIBRARY_DEBUG -
+# The osgVolume debug library
+#
+# $OSGDIR is an environment variable that would correspond to the
+# ./configure --prefix=$OSGDIR used in building osg.
#
# Created by Eric Wing.
diff --git a/Modules/FindosgWidget.cmake b/Modules/FindosgWidget.cmake
index cb2e12fcac..ec3c3bca9d 100644
--- a/Modules/FindosgWidget.cmake
+++ b/Modules/FindosgWidget.cmake
@@ -1,29 +1,34 @@
-# This is part of the Findosg* suite used to find OpenSceneGraph components.
-# Each component is separate and you must opt in to each module. You must
-# also opt into OpenGL and OpenThreads (and Producer if needed) as these
-# modules won't do it for you. This is to allow you control over your own
-# system piece by piece in case you need to opt out of certain components
-# or change the Find behavior for a particular module (perhaps because the
-# default FindOpenGL.cmake module doesn't work with your system as an
-# example).
-# If you want to use a more convenient module that includes everything,
-# use the FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
-#
-# Locate osgWidget
-# This module defines
-#
-# OSGWIDGET_FOUND - Was osgWidget found?
-# OSGWIDGET_INCLUDE_DIR - Where to find the headers
-# OSGWIDGET_LIBRARIES - The libraries to link for osgWidget (use this)
-#
-# OSGWIDGET_LIBRARY - The osgWidget library
-# OSGWIDGET_LIBRARY_DEBUG - The osgWidget debug library
-#
-# $OSGDIR is an environment variable that would
-# correspond to the ./configure --prefix=$OSGDIR
-# used in building osg.
-#
-# FindosgWidget.cmake tweaked from Findosg* suite as created by Eric Wing.
+#.rst:
+# FindosgWidget
+# -------------
+#
+#
+#
+# This is part of the Findosg* suite used to find OpenSceneGraph
+# components. Each component is separate and you must opt in to each
+# module. You must also opt into OpenGL and OpenThreads (and Producer
+# if needed) as these modules won't do it for you. This is to allow you
+# control over your own system piece by piece in case you need to opt
+# out of certain components or change the Find behavior for a particular
+# module (perhaps because the default FindOpenGL.cmake module doesn't
+# work with your system as an example). If you want to use a more
+# convenient module that includes everything, use the
+# FindOpenSceneGraph.cmake instead of the Findosg*.cmake modules.
+#
+# Locate osgWidget This module defines
+#
+# OSGWIDGET_FOUND - Was osgWidget found? OSGWIDGET_INCLUDE_DIR - Where
+# to find the headers OSGWIDGET_LIBRARIES - The libraries to link for
+# osgWidget (use this)
+#
+# OSGWIDGET_LIBRARY - The osgWidget library OSGWIDGET_LIBRARY_DEBUG -
+# The osgWidget debug library
+#
+# $OSGDIR is an environment variable that would correspond to the
+# ./configure --prefix=$OSGDIR used in building osg.
+#
+# FindosgWidget.cmake tweaked from Findosg* suite as created by Eric
+# Wing.
#=============================================================================
# Copyright 2007-2009 Kitware, Inc.
diff --git a/Modules/Findosg_functions.cmake b/Modules/Findosg_functions.cmake
index 2e908379f2..d10fae92fd 100644
--- a/Modules/Findosg_functions.cmake
+++ b/Modules/Findosg_functions.cmake
@@ -1,8 +1,14 @@
+#.rst:
+# Findosg_functions
+# -----------------
+#
+#
+#
+#
#
# This CMake file contains two macros to assist with searching for OSG
# libraries and nodekits. Please see FindOpenSceneGraph.cmake for full
# documentation.
-#
#=============================================================================
# Copyright 2009 Kitware, Inc.
diff --git a/Modules/FindwxWidgets.cmake b/Modules/FindwxWidgets.cmake
index 28c1b64122..4ecab621f9 100644
--- a/Modules/FindwxWidgets.cmake
+++ b/Modules/FindwxWidgets.cmake
@@ -1,79 +1,108 @@
-# - Find a wxWidgets (a.k.a., wxWindows) installation.
+#.rst:
+# FindwxWidgets
+# -------------
+#
+# Find a wxWidgets (a.k.a., wxWindows) installation.
+#
# This module finds if wxWidgets is installed and selects a default
-# configuration to use. wxWidgets is a modular library. To specify the
-# modules that you will use, you need to name them as components to
-# the package:
+# configuration to use. wxWidgets is a modular library. To specify the
+# modules that you will use, you need to name them as components to the
+# package:
#
# find_package(wxWidgets COMPONENTS core base ...)
#
-# There are two search branches: a windows style and a unix style. For
-# windows, the following variables are searched for and set to
-# defaults in case of multiple choices. Change them if the defaults
-# are not desired (i.e., these are the only variables you should
-# change to select a configuration):
+# There are two search branches: a windows style and a unix style. For
+# windows, the following variables are searched for and set to defaults
+# in case of multiple choices. Change them if the defaults are not
+# desired (i.e., these are the only variables you should change to
+# select a configuration):
+#
+# ::
+#
+# wxWidgets_ROOT_DIR - Base wxWidgets directory
+# (e.g., C:/wxWidgets-2.6.3).
+# wxWidgets_LIB_DIR - Path to wxWidgets libraries
+# (e.g., C:/wxWidgets-2.6.3/lib/vc_lib).
+# wxWidgets_CONFIGURATION - Configuration to use
+# (e.g., msw, mswd, mswu, mswunivud, etc.)
+# wxWidgets_EXCLUDE_COMMON_LIBRARIES
+# - Set to TRUE to exclude linking of
+# commonly required libs (e.g., png tiff
+# jpeg zlib regex expat).
+#
#
-# wxWidgets_ROOT_DIR - Base wxWidgets directory
-# (e.g., C:/wxWidgets-2.6.3).
-# wxWidgets_LIB_DIR - Path to wxWidgets libraries
-# (e.g., C:/wxWidgets-2.6.3/lib/vc_lib).
-# wxWidgets_CONFIGURATION - Configuration to use
-# (e.g., msw, mswd, mswu, mswunivud, etc.)
-# wxWidgets_EXCLUDE_COMMON_LIBRARIES
-# - Set to TRUE to exclude linking of
-# commonly required libs (e.g., png tiff
-# jpeg zlib regex expat).
#
-# For unix style it uses the wx-config utility. You can select between
+# For unix style it uses the wx-config utility. You can select between
# debug/release, unicode/ansi, universal/non-universal, and
# static/shared in the QtDialog or ccmake interfaces by turning ON/OFF
# the following variables:
#
-# wxWidgets_USE_DEBUG
-# wxWidgets_USE_UNICODE
-# wxWidgets_USE_UNIVERSAL
-# wxWidgets_USE_STATIC
+# ::
+#
+# wxWidgets_USE_DEBUG
+# wxWidgets_USE_UNICODE
+# wxWidgets_USE_UNIVERSAL
+# wxWidgets_USE_STATIC
+#
+#
#
# There is also a wxWidgets_CONFIG_OPTIONS variable for all other
-# options that need to be passed to the wx-config utility. For
-# example, to use the base toolkit found in the /usr/local path, set
-# the variable (before calling the FIND_PACKAGE command) as such:
+# options that need to be passed to the wx-config utility. For example,
+# to use the base toolkit found in the /usr/local path, set the variable
+# (before calling the FIND_PACKAGE command) as such:
+#
+# ::
+#
+# set(wxWidgets_CONFIG_OPTIONS --toolkit=base --prefix=/usr)
#
-# set(wxWidgets_CONFIG_OPTIONS --toolkit=base --prefix=/usr)
#
-# The following are set after the configuration is done for both
-# windows and unix style:
#
-# wxWidgets_FOUND - Set to TRUE if wxWidgets was found.
-# wxWidgets_INCLUDE_DIRS - Include directories for WIN32
-# i.e., where to find "wx/wx.h" and
-# "wx/setup.h"; possibly empty for unices.
-# wxWidgets_LIBRARIES - Path to the wxWidgets libraries.
-# wxWidgets_LIBRARY_DIRS - compile time link dirs, useful for
-# rpath on UNIX. Typically an empty string
-# in WIN32 environment.
-# wxWidgets_DEFINITIONS - Contains defines required to compile/link
-# against WX, e.g. WXUSINGDLL
-# wxWidgets_DEFINITIONS_DEBUG- Contains defines required to compile/link
-# against WX debug builds, e.g. __WXDEBUG__
-# wxWidgets_CXX_FLAGS - Include dirs and compiler flags for
-# unices, empty on WIN32. Essentially
-# "`wx-config --cxxflags`".
-# wxWidgets_USE_FILE - Convenience include file.
+# The following are set after the configuration is done for both windows
+# and unix style:
+#
+# ::
+#
+# wxWidgets_FOUND - Set to TRUE if wxWidgets was found.
+# wxWidgets_INCLUDE_DIRS - Include directories for WIN32
+# i.e., where to find "wx/wx.h" and
+# "wx/setup.h"; possibly empty for unices.
+# wxWidgets_LIBRARIES - Path to the wxWidgets libraries.
+# wxWidgets_LIBRARY_DIRS - compile time link dirs, useful for
+# rpath on UNIX. Typically an empty string
+# in WIN32 environment.
+# wxWidgets_DEFINITIONS - Contains defines required to compile/link
+# against WX, e.g. WXUSINGDLL
+# wxWidgets_DEFINITIONS_DEBUG- Contains defines required to compile/link
+# against WX debug builds, e.g. __WXDEBUG__
+# wxWidgets_CXX_FLAGS - Include dirs and compiler flags for
+# unices, empty on WIN32. Essentially
+# "`wx-config --cxxflags`".
+# wxWidgets_USE_FILE - Convenience include file.
+#
+#
#
# Sample usage:
-# # Note that for MinGW users the order of libs is important!
-# find_package(wxWidgets COMPONENTS net gl core base)
-# if(wxWidgets_FOUND)
-# include(${wxWidgets_USE_FILE})
-# # and for each of your dependent executable/library targets:
-# target_link_libraries(<YourTarget> ${wxWidgets_LIBRARIES})
-# endif()
+#
+# ::
+#
+# # Note that for MinGW users the order of libs is important!
+# find_package(wxWidgets COMPONENTS net gl core base)
+# if(wxWidgets_FOUND)
+# include(${wxWidgets_USE_FILE})
+# # and for each of your dependent executable/library targets:
+# target_link_libraries(<YourTarget> ${wxWidgets_LIBRARIES})
+# endif()
+#
+#
#
# If wxWidgets is required (i.e., not an optional part):
-# find_package(wxWidgets REQUIRED net gl core base)
-# include(${wxWidgets_USE_FILE})
-# # and for each of your dependent executable/library targets:
-# target_link_libraries(<YourTarget> ${wxWidgets_LIBRARIES})
+#
+# ::
+#
+# find_package(wxWidgets REQUIRED net gl core base)
+# include(${wxWidgets_USE_FILE})
+# # and for each of your dependent executable/library targets:
+# target_link_libraries(<YourTarget> ${wxWidgets_LIBRARIES})
#=============================================================================
# Copyright 2004-2009 Kitware, Inc.
diff --git a/Modules/FindwxWindows.cmake b/Modules/FindwxWindows.cmake
index 868d20c73c..6e441c3a46 100644
--- a/Modules/FindwxWindows.cmake
+++ b/Modules/FindwxWindows.cmake
@@ -1,51 +1,81 @@
-# - Find wxWindows (wxWidgets) installation
-# This module finds if wxWindows/wxWidgets is installed and determines where
-# the include files and libraries are. It also determines what the name of
-# the library is.
-# Please note this file is DEPRECATED and replaced by FindwxWidgets.cmake.
-# This code sets the following variables:
-#
-# WXWINDOWS_FOUND = system has WxWindows
-# WXWINDOWS_LIBRARIES = path to the wxWindows libraries
-# on Unix/Linux with additional
-# linker flags from
-# "wx-config --libs"
-# CMAKE_WXWINDOWS_CXX_FLAGS = Compiler flags for wxWindows,
-# essentially "`wx-config --cxxflags`"
-# on Linux
-# WXWINDOWS_INCLUDE_DIR = where to find "wx/wx.h" and "wx/setup.h"
-# WXWINDOWS_LINK_DIRECTORIES = link directories, useful for rpath on
-# Unix
-# WXWINDOWS_DEFINITIONS = extra defines
-#
-# OPTIONS
-# If you need OpenGL support please
-# set(WXWINDOWS_USE_GL 1)
+#.rst:
+# FindwxWindows
+# -------------
+#
+# Find wxWindows (wxWidgets) installation
+#
+# This module finds if wxWindows/wxWidgets is installed and determines
+# where the include files and libraries are. It also determines what
+# the name of the library is. Please note this file is DEPRECATED and
+# replaced by FindwxWidgets.cmake. This code sets the following
+# variables:
+#
+# ::
+#
+# WXWINDOWS_FOUND = system has WxWindows
+# WXWINDOWS_LIBRARIES = path to the wxWindows libraries
+# on Unix/Linux with additional
+# linker flags from
+# "wx-config --libs"
+# CMAKE_WXWINDOWS_CXX_FLAGS = Compiler flags for wxWindows,
+# essentially "`wx-config --cxxflags`"
+# on Linux
+# WXWINDOWS_INCLUDE_DIR = where to find "wx/wx.h" and "wx/setup.h"
+# WXWINDOWS_LINK_DIRECTORIES = link directories, useful for rpath on
+# Unix
+# WXWINDOWS_DEFINITIONS = extra defines
+#
+#
+#
+# OPTIONS If you need OpenGL support please
+#
+# ::
+#
+# set(WXWINDOWS_USE_GL 1)
+#
# in your CMakeLists.txt *before* you include this file.
#
-# HAVE_ISYSTEM - true required to replace -I by -isystem on g++
+# ::
+#
+# HAVE_ISYSTEM - true required to replace -I by -isystem on g++
+#
+#
#
# For convenience include Use_wxWindows.cmake in your project's
-# CMakeLists.txt using include(${CMAKE_CURRENT_LIST_DIR}/Use_wxWindows.cmake).
+# CMakeLists.txt using
+# include(${CMAKE_CURRENT_LIST_DIR}/Use_wxWindows.cmake).
#
# USAGE
-# set(WXWINDOWS_USE_GL 1)
-# find_package(wxWindows)
#
-# NOTES
-# wxWidgets 2.6.x is supported for monolithic builds
-# e.g. compiled in wx/build/msw dir as:
-# nmake -f makefile.vc BUILD=debug SHARED=0 USE_OPENGL=1 MONOLITHIC=1
+# ::
+#
+# set(WXWINDOWS_USE_GL 1)
+# find_package(wxWindows)
+#
+#
+#
+# NOTES wxWidgets 2.6.x is supported for monolithic builds e.g.
+# compiled in wx/build/msw dir as:
+#
+# ::
+#
+# nmake -f makefile.vc BUILD=debug SHARED=0 USE_OPENGL=1 MONOLITHIC=1
+#
+#
#
# DEPRECATED
#
-# CMAKE_WX_CAN_COMPILE
-# WXWINDOWS_LIBRARY
-# CMAKE_WX_CXX_FLAGS
-# WXWINDOWS_INCLUDE_PATH
+# ::
+#
+# CMAKE_WX_CAN_COMPILE
+# WXWINDOWS_LIBRARY
+# CMAKE_WX_CXX_FLAGS
+# WXWINDOWS_INCLUDE_PATH
+#
+#
#
-# AUTHOR
-# Jan Woetzel <http://www.mip.informatik.uni-kiel.de/~jw> (07/2003-01/2006)
+# AUTHOR Jan Woetzel <http://www.mip.informatik.uni-kiel.de/~jw>
+# (07/2003-01/2006)
#=============================================================================
# Copyright 2000-2009 Kitware, Inc.
diff --git a/Modules/FortranCInterface.cmake b/Modules/FortranCInterface.cmake
index c59e1f839e..dccb26fb41 100644
--- a/Modules/FortranCInterface.cmake
+++ b/Modules/FortranCInterface.cmake
@@ -1,85 +1,129 @@
-# - Fortran/C Interface Detection
+#.rst:
+# FortranCInterface
+# -----------------
+#
+# Fortran/C Interface Detection
+#
# This module automatically detects the API by which C and Fortran
# languages interact. Variables indicate if the mangling is found:
-# FortranCInterface_GLOBAL_FOUND = Global subroutines and functions
-# FortranCInterface_MODULE_FOUND = Module subroutines and functions
-# (declared by "MODULE PROCEDURE")
+#
+# ::
+#
+# FortranCInterface_GLOBAL_FOUND = Global subroutines and functions
+# FortranCInterface_MODULE_FOUND = Module subroutines and functions
+# (declared by "MODULE PROCEDURE")
+#
# A function is provided to generate a C header file containing macros
# to mangle symbol names:
-# FortranCInterface_HEADER(<file>
-# [MACRO_NAMESPACE <macro-ns>]
-# [SYMBOL_NAMESPACE <ns>]
-# [SYMBOLS [<module>:]<function> ...])
+#
+# ::
+#
+# FortranCInterface_HEADER(<file>
+# [MACRO_NAMESPACE <macro-ns>]
+# [SYMBOL_NAMESPACE <ns>]
+# [SYMBOLS [<module>:]<function> ...])
+#
# It generates in <file> definitions of the following macros:
-# #define FortranCInterface_GLOBAL (name,NAME) ...
-# #define FortranCInterface_GLOBAL_(name,NAME) ...
-# #define FortranCInterface_MODULE (mod,name, MOD,NAME) ...
-# #define FortranCInterface_MODULE_(mod,name, MOD,NAME) ...
-# These macros mangle four categories of Fortran symbols,
-# respectively:
-# - Global symbols without '_': call mysub()
-# - Global symbols with '_' : call my_sub()
-# - Module symbols without '_': use mymod; call mysub()
-# - Module symbols with '_' : use mymod; call my_sub()
+#
+# ::
+#
+# #define FortranCInterface_GLOBAL (name,NAME) ...
+# #define FortranCInterface_GLOBAL_(name,NAME) ...
+# #define FortranCInterface_MODULE (mod,name, MOD,NAME) ...
+# #define FortranCInterface_MODULE_(mod,name, MOD,NAME) ...
+#
+# These macros mangle four categories of Fortran symbols, respectively:
+#
+# ::
+#
+# - Global symbols without '_': call mysub()
+# - Global symbols with '_' : call my_sub()
+# - Module symbols without '_': use mymod; call mysub()
+# - Module symbols with '_' : use mymod; call my_sub()
+#
# If mangling for a category is not known, its macro is left undefined.
-# All macros require raw names in both lower case and upper case.
-# The MACRO_NAMESPACE option replaces the default "FortranCInterface_"
+# All macros require raw names in both lower case and upper case. The
+# MACRO_NAMESPACE option replaces the default "FortranCInterface_"
# prefix with a given namespace "<macro-ns>".
#
# The SYMBOLS option lists symbols to mangle automatically with C
# preprocessor definitions:
-# <function> ==> #define <ns><function> ...
-# <module>:<function> ==> #define <ns><module>_<function> ...
+#
+# ::
+#
+# <function> ==> #define <ns><function> ...
+# <module>:<function> ==> #define <ns><module>_<function> ...
+#
# If the mangling for some symbol is not known then no preprocessor
-# definition is created, and a warning is displayed.
-# The SYMBOL_NAMESPACE option prefixes all preprocessor definitions
+# definition is created, and a warning is displayed. The
+# SYMBOL_NAMESPACE option prefixes all preprocessor definitions
# generated by the SYMBOLS option with a given namespace "<ns>".
#
# Example usage:
-# include(FortranCInterface)
-# FortranCInterface_HEADER(FC.h MACRO_NAMESPACE "FC_")
-# This creates a "FC.h" header that defines mangling macros
-# FC_GLOBAL(), FC_GLOBAL_(), FC_MODULE(), and FC_MODULE_().
+#
+# ::
+#
+# include(FortranCInterface)
+# FortranCInterface_HEADER(FC.h MACRO_NAMESPACE "FC_")
+#
+# This creates a "FC.h" header that defines mangling macros FC_GLOBAL(),
+# FC_GLOBAL_(), FC_MODULE(), and FC_MODULE_().
#
# Example usage:
-# include(FortranCInterface)
-# FortranCInterface_HEADER(FCMangle.h
-# MACRO_NAMESPACE "FC_"
-# SYMBOL_NAMESPACE "FC_"
-# SYMBOLS mysub mymod:my_sub)
+#
+# ::
+#
+# include(FortranCInterface)
+# FortranCInterface_HEADER(FCMangle.h
+# MACRO_NAMESPACE "FC_"
+# SYMBOL_NAMESPACE "FC_"
+# SYMBOLS mysub mymod:my_sub)
+#
# This creates a "FCMangle.h" header that defines the same FC_*()
# mangling macros as the previous example plus preprocessor symbols
# FC_mysub and FC_mymod_my_sub.
#
# Another function is provided to verify that the Fortran and C/C++
# compilers work together:
-# FortranCInterface_VERIFY([CXX] [QUIET])
-# It tests whether a simple test executable using Fortran and C (and
-# C++ when the CXX option is given) compiles and links successfully.
-# The result is stored in the cache entry FortranCInterface_VERIFIED_C
-# (or FortranCInterface_VERIFIED_CXX if CXX is given) as a boolean.
-# If the check fails and QUIET is not given the function terminates
-# with a FATAL_ERROR message describing the problem. The purpose of
-# this check is to stop a build early for incompatible compiler
-# combinations. The test is built in the Release configuration.
-#
-# FortranCInterface is aware of possible GLOBAL and MODULE manglings
-# for many Fortran compilers, but it also provides an interface to
-# specify new possible manglings. Set the variables
-# FortranCInterface_GLOBAL_SYMBOLS
-# FortranCInterface_MODULE_SYMBOLS
-# before including FortranCInterface to specify manglings of the
-# symbols "MySub", "My_Sub", "MyModule:MySub", and "My_Module:My_Sub".
-# For example, the code:
-# set(FortranCInterface_GLOBAL_SYMBOLS mysub_ my_sub__ MYSUB_)
-# # ^^^^^ ^^^^^^ ^^^^^
-# set(FortranCInterface_MODULE_SYMBOLS
-# __mymodule_MOD_mysub __my_module_MOD_my_sub)
-# # ^^^^^^^^ ^^^^^ ^^^^^^^^^ ^^^^^^
-# include(FortranCInterface)
+#
+# ::
+#
+# FortranCInterface_VERIFY([CXX] [QUIET])
+#
+# It tests whether a simple test executable using Fortran and C (and C++
+# when the CXX option is given) compiles and links successfully. The
+# result is stored in the cache entry FortranCInterface_VERIFIED_C (or
+# FortranCInterface_VERIFIED_CXX if CXX is given) as a boolean. If the
+# check fails and QUIET is not given the function terminates with a
+# FATAL_ERROR message describing the problem. The purpose of this check
+# is to stop a build early for incompatible compiler combinations. The
+# test is built in the Release configuration.
+#
+# FortranCInterface is aware of possible GLOBAL and MODULE manglings for
+# many Fortran compilers, but it also provides an interface to specify
+# new possible manglings. Set the variables
+#
+# ::
+#
+# FortranCInterface_GLOBAL_SYMBOLS
+# FortranCInterface_MODULE_SYMBOLS
+#
+# before including FortranCInterface to specify manglings of the symbols
+# "MySub", "My_Sub", "MyModule:MySub", and "My_Module:My_Sub". For
+# example, the code:
+#
+# ::
+#
+# set(FortranCInterface_GLOBAL_SYMBOLS mysub_ my_sub__ MYSUB_)
+# # ^^^^^ ^^^^^^ ^^^^^
+# set(FortranCInterface_MODULE_SYMBOLS
+# __mymodule_MOD_mysub __my_module_MOD_my_sub)
+# # ^^^^^^^^ ^^^^^ ^^^^^^^^^ ^^^^^^
+# include(FortranCInterface)
+#
# tells FortranCInterface to try given GLOBAL and MODULE manglings.
-# (The carets point at raw symbol names for clarity in this example
-# but are not needed.)
+# (The carets point at raw symbol names for clarity in this example but
+# are not needed.)
#=============================================================================
# Copyright 2008-2009 Kitware, Inc.
diff --git a/Modules/GNUInstallDirs.cmake b/Modules/GNUInstallDirs.cmake
index 0302e4bef6..c8d77c6a14 100644
--- a/Modules/GNUInstallDirs.cmake
+++ b/Modules/GNUInstallDirs.cmake
@@ -1,32 +1,49 @@
-# - Define GNU standard installation directories
+#.rst:
+# GNUInstallDirs
+# --------------
+#
+# Define GNU standard installation directories
+#
# Provides install directory variables as defined for GNU software:
-# http://www.gnu.org/prep/standards/html_node/Directory-Variables.html
+#
+# ::
+#
+# http://www.gnu.org/prep/standards/html_node/Directory-Variables.html
+#
# Inclusion of this module defines the following variables:
-# CMAKE_INSTALL_<dir> - destination for files of a given type
-# CMAKE_INSTALL_FULL_<dir> - corresponding absolute path
+#
+# ::
+#
+# CMAKE_INSTALL_<dir> - destination for files of a given type
+# CMAKE_INSTALL_FULL_<dir> - corresponding absolute path
+#
# where <dir> is one of:
-# BINDIR - user executables (bin)
-# SBINDIR - system admin executables (sbin)
-# LIBEXECDIR - program executables (libexec)
-# SYSCONFDIR - read-only single-machine data (etc)
-# SHAREDSTATEDIR - modifiable architecture-independent data (com)
-# LOCALSTATEDIR - modifiable single-machine data (var)
-# LIBDIR - object code libraries (lib or lib64 or lib/<multiarch-tuple> on Debian)
-# INCLUDEDIR - C header files (include)
-# OLDINCLUDEDIR - C header files for non-gcc (/usr/include)
-# DATAROOTDIR - read-only architecture-independent data root (share)
-# DATADIR - read-only architecture-independent data (DATAROOTDIR)
-# INFODIR - info documentation (DATAROOTDIR/info)
-# LOCALEDIR - locale-dependent data (DATAROOTDIR/locale)
-# MANDIR - man documentation (DATAROOTDIR/man)
-# DOCDIR - documentation root (DATAROOTDIR/doc/PROJECT_NAME)
-# Each CMAKE_INSTALL_<dir> value may be passed to the DESTINATION options of
-# install() commands for the corresponding file type. If the includer does
-# not define a value the above-shown default will be used and the value will
-# appear in the cache for editing by the user.
-# Each CMAKE_INSTALL_FULL_<dir> value contains an absolute path constructed
-# from the corresponding destination by prepending (if necessary) the value
-# of CMAKE_INSTALL_PREFIX.
+#
+# ::
+#
+# BINDIR - user executables (bin)
+# SBINDIR - system admin executables (sbin)
+# LIBEXECDIR - program executables (libexec)
+# SYSCONFDIR - read-only single-machine data (etc)
+# SHAREDSTATEDIR - modifiable architecture-independent data (com)
+# LOCALSTATEDIR - modifiable single-machine data (var)
+# LIBDIR - object code libraries (lib or lib64 or lib/<multiarch-tuple> on Debian)
+# INCLUDEDIR - C header files (include)
+# OLDINCLUDEDIR - C header files for non-gcc (/usr/include)
+# DATAROOTDIR - read-only architecture-independent data root (share)
+# DATADIR - read-only architecture-independent data (DATAROOTDIR)
+# INFODIR - info documentation (DATAROOTDIR/info)
+# LOCALEDIR - locale-dependent data (DATAROOTDIR/locale)
+# MANDIR - man documentation (DATAROOTDIR/man)
+# DOCDIR - documentation root (DATAROOTDIR/doc/PROJECT_NAME)
+#
+# Each CMAKE_INSTALL_<dir> value may be passed to the DESTINATION
+# options of install() commands for the corresponding file type. If the
+# includer does not define a value the above-shown default will be used
+# and the value will appear in the cache for editing by the user. Each
+# CMAKE_INSTALL_FULL_<dir> value contains an absolute path constructed
+# from the corresponding destination by prepending (if necessary) the
+# value of CMAKE_INSTALL_PREFIX.
#=============================================================================
# Copyright 2011 Nikita Krupen'ko <krnekit@gmail.com>
diff --git a/Modules/GenerateExportHeader.cmake b/Modules/GenerateExportHeader.cmake
index fb113a7903..5baf9e02d0 100644
--- a/Modules/GenerateExportHeader.cmake
+++ b/Modules/GenerateExportHeader.cmake
@@ -1,143 +1,195 @@
-# - Function for generation of export macros for libraries
+#.rst:
+# GenerateExportHeader
+# --------------------
+#
+# Function for generation of export macros for libraries
+#
# This module provides the function GENERATE_EXPORT_HEADER().
#
-# The GENERATE_EXPORT_HEADER function can be used to generate a file suitable
-# for preprocessor inclusion which contains EXPORT macros to be used in
-# library classes.
+# The GENERATE_EXPORT_HEADER function can be used to generate a file
+# suitable for preprocessor inclusion which contains EXPORT macros to be
+# used in library classes.
#
# GENERATE_EXPORT_HEADER( LIBRARY_TARGET
-# [BASE_NAME <base_name>]
-# [EXPORT_MACRO_NAME <export_macro_name>]
-# [EXPORT_FILE_NAME <export_file_name>]
-# [DEPRECATED_MACRO_NAME <deprecated_macro_name>]
-# [NO_EXPORT_MACRO_NAME <no_export_macro_name>]
-# [STATIC_DEFINE <static_define>]
-# [NO_DEPRECATED_MACRO_NAME <no_deprecated_macro_name>]
-# [DEFINE_NO_DEPRECATED]
-# [PREFIX_NAME <prefix_name>]
+#
+# ::
+#
+# [BASE_NAME <base_name>]
+# [EXPORT_MACRO_NAME <export_macro_name>]
+# [EXPORT_FILE_NAME <export_file_name>]
+# [DEPRECATED_MACRO_NAME <deprecated_macro_name>]
+# [NO_EXPORT_MACRO_NAME <no_export_macro_name>]
+# [STATIC_DEFINE <static_define>]
+# [NO_DEPRECATED_MACRO_NAME <no_deprecated_macro_name>]
+# [DEFINE_NO_DEPRECATED]
+# [PREFIX_NAME <prefix_name>]
+#
# )
#
-# The target properties CXX_VISIBILITY_PRESET and VISIBILITY_INLINES_HIDDEN
-# can be used to add the appropriate compile flags for targets. See the
-# documentation of those target properties, and the convenience variables
-# CMAKE_CXX_VISIBILITY_PRESET and CMAKE_VISIBILITY_INLINES_HIDDEN.
-#
-# By default GENERATE_EXPORT_HEADER() generates macro names in a file name
-# determined by the name of the library. This means that in the simplest case,
-# users of generate_export_header will be equivalent to:
-#
-# set(CMAKE_CXX_VISIBILITY_PRESET hidden)
-# set(CMAKE_VISIBILITY_INLINES_HIDDEN 1)
-# add_library(somelib someclass.cpp)
-# generate_export_header(somelib)
-# install(TARGETS somelib DESTINATION ${LIBRARY_INSTALL_DIR})
-# install(FILES
-# someclass.h
-# ${PROJECT_BINARY_DIR}/somelib_export.h DESTINATION ${INCLUDE_INSTALL_DIR}
-# )
+# The target properties CXX_VISIBILITY_PRESET and
+# VISIBILITY_INLINES_HIDDEN can be used to add the appropriate compile
+# flags for targets. See the documentation of those target properties,
+# and the convenience variables CMAKE_CXX_VISIBILITY_PRESET and
+# CMAKE_VISIBILITY_INLINES_HIDDEN.
+#
+# By default GENERATE_EXPORT_HEADER() generates macro names in a file
+# name determined by the name of the library. This means that in the
+# simplest case, users of generate_export_header will be equivalent to:
+#
+# ::
+#
+# set(CMAKE_CXX_VISIBILITY_PRESET hidden)
+# set(CMAKE_VISIBILITY_INLINES_HIDDEN 1)
+# add_library(somelib someclass.cpp)
+# generate_export_header(somelib)
+# install(TARGETS somelib DESTINATION ${LIBRARY_INSTALL_DIR})
+# install(FILES
+# someclass.h
+# ${PROJECT_BINARY_DIR}/somelib_export.h DESTINATION ${INCLUDE_INSTALL_DIR}
+# )
+#
+#
#
# And in the ABI header files:
#
-# #include "somelib_export.h"
-# class SOMELIB_EXPORT SomeClass {
-# ...
-# };
+# ::
#
-# The CMake fragment will generate a file in the ${CMAKE_CURRENT_BINARY_DIR}
-# called somelib_export.h containing the macros SOMELIB_EXPORT, SOMELIB_NO_EXPORT,
-# SOMELIB_DEPRECATED, SOMELIB_DEPRECATED_EXPORT and SOMELIB_DEPRECATED_NO_EXPORT.
-# The resulting file should be installed with other headers in the library.
+# #include "somelib_export.h"
+# class SOMELIB_EXPORT SomeClass {
+# ...
+# };
+#
+#
+#
+# The CMake fragment will generate a file in the
+# ${CMAKE_CURRENT_BINARY_DIR} called somelib_export.h containing the
+# macros SOMELIB_EXPORT, SOMELIB_NO_EXPORT, SOMELIB_DEPRECATED,
+# SOMELIB_DEPRECATED_EXPORT and SOMELIB_DEPRECATED_NO_EXPORT. The
+# resulting file should be installed with other headers in the library.
+#
+# The BASE_NAME argument can be used to override the file name and the
+# names used for the macros
+#
+# ::
+#
+# add_library(somelib someclass.cpp)
+# generate_export_header(somelib
+# BASE_NAME other_name
+# )
#
-# The BASE_NAME argument can be used to override the file name and the names
-# used for the macros
#
-# add_library(somelib someclass.cpp)
-# generate_export_header(somelib
-# BASE_NAME other_name
-# )
#
# Generates a file called other_name_export.h containing the macros
# OTHER_NAME_EXPORT, OTHER_NAME_NO_EXPORT and OTHER_NAME_DEPRECATED etc.
#
-# The BASE_NAME may be overridden by specifiying other options in the function.
-# For example:
+# The BASE_NAME may be overridden by specifiying other options in the
+# function. For example:
+#
+# ::
+#
+# add_library(somelib someclass.cpp)
+# generate_export_header(somelib
+# EXPORT_MACRO_NAME OTHER_NAME_EXPORT
+# )
+#
#
-# add_library(somelib someclass.cpp)
-# generate_export_header(somelib
-# EXPORT_MACRO_NAME OTHER_NAME_EXPORT
-# )
#
-# creates the macro OTHER_NAME_EXPORT instead of SOMELIB_EXPORT, but other macros
-# and the generated file name is as default.
+# creates the macro OTHER_NAME_EXPORT instead of SOMELIB_EXPORT, but
+# other macros and the generated file name is as default.
+#
+# ::
+#
+# add_library(somelib someclass.cpp)
+# generate_export_header(somelib
+# DEPRECATED_MACRO_NAME KDE_DEPRECATED
+# )
+#
#
-# add_library(somelib someclass.cpp)
-# generate_export_header(somelib
-# DEPRECATED_MACRO_NAME KDE_DEPRECATED
-# )
#
# creates the macro KDE_DEPRECATED instead of SOMELIB_DEPRECATED.
#
-# If LIBRARY_TARGET is a static library, macros are defined without values.
+# If LIBRARY_TARGET is a static library, macros are defined without
+# values.
+#
+# If the same sources are used to create both a shared and a static
+# library, the uppercased symbol ${BASE_NAME}_STATIC_DEFINE should be
+# used when building the static library
+#
+# ::
#
-# If the same sources are used to create both a shared and a static library, the
-# uppercased symbol ${BASE_NAME}_STATIC_DEFINE should be used when building the
-# static library
+# add_library(shared_variant SHARED ${lib_SRCS})
+# add_library(static_variant ${lib_SRCS})
+# generate_export_header(shared_variant BASE_NAME libshared_and_static)
+# set_target_properties(static_variant PROPERTIES
+# COMPILE_FLAGS -DLIBSHARED_AND_STATIC_STATIC_DEFINE)
#
-# add_library(shared_variant SHARED ${lib_SRCS})
-# add_library(static_variant ${lib_SRCS})
-# generate_export_header(shared_variant BASE_NAME libshared_and_static)
-# set_target_properties(static_variant PROPERTIES
-# COMPILE_FLAGS -DLIBSHARED_AND_STATIC_STATIC_DEFINE)
#
-# This will cause the export macros to expand to nothing when building the
-# static library.
#
-# If DEFINE_NO_DEPRECATED is specified, then a macro ${BASE_NAME}_NO_DEPRECATED
-# will be defined
-# This macro can be used to remove deprecated code from preprocessor output.
+# This will cause the export macros to expand to nothing when building
+# the static library.
+#
+# If DEFINE_NO_DEPRECATED is specified, then a macro
+# ${BASE_NAME}_NO_DEPRECATED will be defined This macro can be used to
+# remove deprecated code from preprocessor output.
+#
+# ::
+#
+# option(EXCLUDE_DEPRECATED "Exclude deprecated parts of the library" FALSE)
+# if (EXCLUDE_DEPRECATED)
+# set(NO_BUILD_DEPRECATED DEFINE_NO_DEPRECATED)
+# endif()
+# generate_export_header(somelib ${NO_BUILD_DEPRECATED})
+#
#
-# option(EXCLUDE_DEPRECATED "Exclude deprecated parts of the library" FALSE)
-# if (EXCLUDE_DEPRECATED)
-# set(NO_BUILD_DEPRECATED DEFINE_NO_DEPRECATED)
-# endif()
-# generate_export_header(somelib ${NO_BUILD_DEPRECATED})
#
# And then in somelib:
#
-# class SOMELIB_EXPORT SomeClass
-# {
-# public:
-# #ifndef SOMELIB_NO_DEPRECATED
-# SOMELIB_DEPRECATED void oldMethod();
-# #endif
-# };
+# ::
+#
+# class SOMELIB_EXPORT SomeClass
+# {
+# public:
+# #ifndef SOMELIB_NO_DEPRECATED
+# SOMELIB_DEPRECATED void oldMethod();
+# #endif
+# };
#
-# #ifndef SOMELIB_NO_DEPRECATED
-# void SomeClass::oldMethod() { }
-# #endif
#
-# If PREFIX_NAME is specified, the argument will be used as a prefix to all
-# generated macros.
+#
+# ::
+#
+# #ifndef SOMELIB_NO_DEPRECATED
+# void SomeClass::oldMethod() { }
+# #endif
+#
+#
+#
+# If PREFIX_NAME is specified, the argument will be used as a prefix to
+# all generated macros.
#
# For example:
#
-# generate_export_header(somelib PREFIX_NAME VTK_)
+# ::
+#
+# generate_export_header(somelib PREFIX_NAME VTK_)
+#
+#
#
# Generates the macros VTK_SOMELIB_EXPORT etc.
#
#
-# ADD_COMPILER_EXPORT_FLAGS( [<output_variable>] )
#
-# The ADD_COMPILER_EXPORT_FLAGS function
-# adds -fvisibility=hidden to CMAKE_CXX_FLAGS if supported, and is a no-op on
-# Windows which does not need extra compiler flags for exporting support. You
-# may optionally pass a single argument to ADD_COMPILER_EXPORT_FLAGS that will
-# be populated with the required CXX_FLAGS required to enable visibility support
-# for the compiler/architecture in use.
+# ADD_COMPILER_EXPORT_FLAGS( [<output_variable>] )
#
-# This function is deprecated. Set the target properties CXX_VISIBILITY_PRESET
-# and VISIBILITY_INLINES_HIDDEN instead.
+# The ADD_COMPILER_EXPORT_FLAGS function adds -fvisibility=hidden to
+# CMAKE_CXX_FLAGS if supported, and is a no-op on Windows which does not
+# need extra compiler flags for exporting support. You may optionally
+# pass a single argument to ADD_COMPILER_EXPORT_FLAGS that will be
+# populated with the required CXX_FLAGS required to enable visibility
+# support for the compiler/architecture in use.
#
+# This function is deprecated. Set the target properties
+# CXX_VISIBILITY_PRESET and VISIBILITY_INLINES_HIDDEN instead.
#=============================================================================
# Copyright 2011 Stephen Kelly <steveire@gmail.com>
diff --git a/Modules/GetPrerequisites.cmake b/Modules/GetPrerequisites.cmake
index 9e89788fed..bd899e2564 100644
--- a/Modules/GetPrerequisites.cmake
+++ b/Modules/GetPrerequisites.cmake
@@ -1,111 +1,164 @@
-# - Functions to analyze and list executable file prerequisites.
-# This module provides functions to list the .dll, .dylib or .so
-# files that an executable or shared library file depends on. (Its
+#.rst:
+# GetPrerequisites
+# ----------------
+#
+# Functions to analyze and list executable file prerequisites.
+#
+# This module provides functions to list the .dll, .dylib or .so files
+# that an executable or shared library file depends on. (Its
# prerequisites.)
#
-# It uses various tools to obtain the list of required shared library files:
-# dumpbin (Windows)
-# objdump (MinGW on Windows)
-# ldd (Linux/Unix)
-# otool (Mac OSX)
+# It uses various tools to obtain the list of required shared library
+# files:
+#
+# ::
+#
+# dumpbin (Windows)
+# objdump (MinGW on Windows)
+# ldd (Linux/Unix)
+# otool (Mac OSX)
+#
# The following functions are provided by this module:
-# get_prerequisites
-# list_prerequisites
-# list_prerequisites_by_glob
-# gp_append_unique
-# is_file_executable
-# gp_item_default_embedded_path
-# (projects can override with gp_item_default_embedded_path_override)
-# gp_resolve_item
-# (projects can override with gp_resolve_item_override)
-# gp_resolved_file_type
-# (projects can override with gp_resolved_file_type_override)
-# gp_file_type
-# Requires CMake 2.6 or greater because it uses function, break, return and
-# PARENT_SCOPE.
-#
-# GET_PREREQUISITES(<target> <prerequisites_var> <exclude_system> <recurse>
-# <exepath> <dirs>)
-# Get the list of shared library files required by <target>. The list in
-# the variable named <prerequisites_var> should be empty on first entry to
-# this function. On exit, <prerequisites_var> will contain the list of
-# required shared library files.
-#
-# <target> is the full path to an executable file. <prerequisites_var> is the
-# name of a CMake variable to contain the results. <exclude_system> must be 0
-# or 1 indicating whether to include or exclude "system" prerequisites. If
-# <recurse> is set to 1 all prerequisites will be found recursively, if set to
-# 0 only direct prerequisites are listed. <exepath> is the path to the top
-# level executable used for @executable_path replacment on the Mac. <dirs> is
-# a list of paths where libraries might be found: these paths are searched
-# first when a target without any path info is given. Then standard system
-# locations are also searched: PATH, Framework locations, /usr/lib...
-#
-# LIST_PREREQUISITES(<target> [<recurse> [<exclude_system> [<verbose>]]])
-# Print a message listing the prerequisites of <target>.
#
-# <target> is the name of a shared library or executable target or the full
-# path to a shared library or executable file. If <recurse> is set to 1 all
+# ::
+#
+# get_prerequisites
+# list_prerequisites
+# list_prerequisites_by_glob
+# gp_append_unique
+# is_file_executable
+# gp_item_default_embedded_path
+# (projects can override with gp_item_default_embedded_path_override)
+# gp_resolve_item
+# (projects can override with gp_resolve_item_override)
+# gp_resolved_file_type
+# (projects can override with gp_resolved_file_type_override)
+# gp_file_type
+#
+# Requires CMake 2.6 or greater because it uses function, break, return
+# and PARENT_SCOPE.
+#
+# ::
+#
+# GET_PREREQUISITES(<target> <prerequisites_var> <exclude_system> <recurse>
+# <exepath> <dirs>)
+#
+# Get the list of shared library files required by <target>. The list
+# in the variable named <prerequisites_var> should be empty on first
+# entry to this function. On exit, <prerequisites_var> will contain the
+# list of required shared library files.
+#
+# <target> is the full path to an executable file. <prerequisites_var>
+# is the name of a CMake variable to contain the results.
+# <exclude_system> must be 0 or 1 indicating whether to include or
+# exclude "system" prerequisites. If <recurse> is set to 1 all
# prerequisites will be found recursively, if set to 0 only direct
-# prerequisites are listed. <exclude_system> must be 0 or 1 indicating whether
-# to include or exclude "system" prerequisites. With <verbose> set to 0 only
-# the full path names of the prerequisites are printed, set to 1 extra
-# informatin will be displayed.
-#
-# LIST_PREREQUISITES_BY_GLOB(<glob_arg> <glob_exp>)
-# Print the prerequisites of shared library and executable files matching a
-# globbing pattern. <glob_arg> is GLOB or GLOB_RECURSE and <glob_exp> is a
-# globbing expression used with "file(GLOB" or "file(GLOB_RECURSE" to retrieve
-# a list of matching files. If a matching file is executable, its prerequisites
-# are listed.
+# prerequisites are listed. <exepath> is the path to the top level
+# executable used for @executable_path replacment on the Mac. <dirs> is
+# a list of paths where libraries might be found: these paths are
+# searched first when a target without any path info is given. Then
+# standard system locations are also searched: PATH, Framework
+# locations, /usr/lib...
+#
+# ::
+#
+# LIST_PREREQUISITES(<target> [<recurse> [<exclude_system> [<verbose>]]])
+#
+# Print a message listing the prerequisites of <target>.
+#
+# <target> is the name of a shared library or executable target or the
+# full path to a shared library or executable file. If <recurse> is set
+# to 1 all prerequisites will be found recursively, if set to 0 only
+# direct prerequisites are listed. <exclude_system> must be 0 or 1
+# indicating whether to include or exclude "system" prerequisites. With
+# <verbose> set to 0 only the full path names of the prerequisites are
+# printed, set to 1 extra informatin will be displayed.
+#
+# ::
+#
+# LIST_PREREQUISITES_BY_GLOB(<glob_arg> <glob_exp>)
+#
+# Print the prerequisites of shared library and executable files
+# matching a globbing pattern. <glob_arg> is GLOB or GLOB_RECURSE and
+# <glob_exp> is a globbing expression used with "file(GLOB" or
+# "file(GLOB_RECURSE" to retrieve a list of matching files. If a
+# matching file is executable, its prerequisites are listed.
#
# Any additional (optional) arguments provided are passed along as the
# optional arguments to the list_prerequisites calls.
#
-# GP_APPEND_UNIQUE(<list_var> <value>)
-# Append <value> to the list variable <list_var> only if the value is not
-# already in the list.
+# ::
+#
+# GP_APPEND_UNIQUE(<list_var> <value>)
+#
+# Append <value> to the list variable <list_var> only if the value is
+# not already in the list.
+#
+# ::
+#
+# IS_FILE_EXECUTABLE(<file> <result_var>)
#
-# IS_FILE_EXECUTABLE(<file> <result_var>)
-# Return 1 in <result_var> if <file> is a binary executable, 0 otherwise.
+# Return 1 in <result_var> if <file> is a binary executable, 0
+# otherwise.
+#
+# ::
+#
+# GP_ITEM_DEFAULT_EMBEDDED_PATH(<item> <default_embedded_path_var>)
#
-# GP_ITEM_DEFAULT_EMBEDDED_PATH(<item> <default_embedded_path_var>)
# Return the path that others should refer to the item by when the item
# is embedded inside a bundle.
#
# Override on a per-project basis by providing a project-specific
# gp_item_default_embedded_path_override function.
#
-# GP_RESOLVE_ITEM(<context> <item> <exepath> <dirs> <resolved_item_var>)
+# ::
+#
+# GP_RESOLVE_ITEM(<context> <item> <exepath> <dirs> <resolved_item_var>)
+#
# Resolve an item into an existing full path file.
#
# Override on a per-project basis by providing a project-specific
# gp_resolve_item_override function.
#
-# GP_RESOLVED_FILE_TYPE(<original_file> <file> <exepath> <dirs> <type_var>)
-# Return the type of <file> with respect to <original_file>. String
-# describing type of prerequisite is returned in variable named <type_var>.
+# ::
+#
+# GP_RESOLVED_FILE_TYPE(<original_file> <file> <exepath> <dirs> <type_var>)
+#
+# Return the type of <file> with respect to <original_file>. String
+# describing type of prerequisite is returned in variable named
+# <type_var>.
#
# Use <exepath> and <dirs> if necessary to resolve non-absolute <file>
# values -- but only for non-embedded items.
#
# Possible types are:
-# system
-# local
-# embedded
-# other
+#
+# ::
+#
+# system
+# local
+# embedded
+# other
+#
# Override on a per-project basis by providing a project-specific
# gp_resolved_file_type_override function.
#
-# GP_FILE_TYPE(<original_file> <file> <type_var>)
-# Return the type of <file> with respect to <original_file>. String
-# describing type of prerequisite is returned in variable named <type_var>.
+# ::
+#
+# GP_FILE_TYPE(<original_file> <file> <type_var>)
+#
+# Return the type of <file> with respect to <original_file>. String
+# describing type of prerequisite is returned in variable named
+# <type_var>.
#
# Possible types are:
-# system
-# local
-# embedded
-# other
+#
+# ::
+#
+# system
+# local
+# embedded
+# other
#=============================================================================
# Copyright 2008-2009 Kitware, Inc.
diff --git a/Modules/InstallRequiredSystemLibraries.cmake b/Modules/InstallRequiredSystemLibraries.cmake
index 2479d68b5e..013a028b4b 100644
--- a/Modules/InstallRequiredSystemLibraries.cmake
+++ b/Modules/InstallRequiredSystemLibraries.cmake
@@ -1,27 +1,32 @@
+#.rst:
+# InstallRequiredSystemLibraries
+# ------------------------------
+#
+#
+#
# By including this file, all library files listed in the variable
# CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS will be installed with
-# install(PROGRAMS ...) into bin for WIN32 and lib
-# for non-WIN32. If CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_SKIP is set to TRUE
-# before including this file, then the INSTALL command is not called.
-# The user can use the variable CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS to use a
-# custom install command and install them however they want.
-# If it is the MSVC compiler, then the microsoft run
-# time libraries will be found and automatically added to the
-# CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS, and installed.
-# If CMAKE_INSTALL_DEBUG_LIBRARIES is set and it is the MSVC
-# compiler, then the debug libraries are installed when available.
-# If CMAKE_INSTALL_DEBUG_LIBRARIES_ONLY is set then only the debug
-# libraries are installed when both debug and release are available.
-# If CMAKE_INSTALL_MFC_LIBRARIES is set then the MFC run time
-# libraries are installed as well as the CRT run time libraries.
-# If CMAKE_INSTALL_SYSTEM_RUNTIME_DESTINATION is set then the libraries are
-# installed to that directory rather than the default.
-# If CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_NO_WARNINGS is NOT set, then this file
-# warns about required files that do not exist. You can set this variable to
-# ON before including this file to avoid the warning. For example, the Visual
-# Studio Express editions do not include the redistributable files, so if you
-# include this file on a machine with only VS Express installed, you'll get
-# the warning.
+# install(PROGRAMS ...) into bin for WIN32 and lib for non-WIN32. If
+# CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_SKIP is set to TRUE before including
+# this file, then the INSTALL command is not called. The user can use
+# the variable CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS to use a custom install
+# command and install them however they want. If it is the MSVC
+# compiler, then the microsoft run time libraries will be found and
+# automatically added to the CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS, and
+# installed. If CMAKE_INSTALL_DEBUG_LIBRARIES is set and it is the MSVC
+# compiler, then the debug libraries are installed when available. If
+# CMAKE_INSTALL_DEBUG_LIBRARIES_ONLY is set then only the debug
+# libraries are installed when both debug and release are available. If
+# CMAKE_INSTALL_MFC_LIBRARIES is set then the MFC run time libraries are
+# installed as well as the CRT run time libraries. If
+# CMAKE_INSTALL_SYSTEM_RUNTIME_DESTINATION is set then the libraries are
+# installed to that directory rather than the default. If
+# CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_NO_WARNINGS is NOT set, then this
+# file warns about required files that do not exist. You can set this
+# variable to ON before including this file to avoid the warning. For
+# example, the Visual Studio Express editions do not include the
+# redistributable files, so if you include this file on a machine with
+# only VS Express installed, you'll get the warning.
#=============================================================================
# Copyright 2006-2009 Kitware, Inc.
diff --git a/Modules/MacroAddFileDependencies.cmake b/Modules/MacroAddFileDependencies.cmake
index d0605a1142..38df1d3a9a 100644
--- a/Modules/MacroAddFileDependencies.cmake
+++ b/Modules/MacroAddFileDependencies.cmake
@@ -1,10 +1,16 @@
-# - MACRO_ADD_FILE_DEPENDENCIES(<_file> depend_files...)
-# Using the macro MACRO_ADD_FILE_DEPENDENCIES() is discouraged. There are usually
-# better ways to specify the correct dependencies.
+#.rst:
+# MacroAddFileDependencies
+# ------------------------
#
-# MACRO_ADD_FILE_DEPENDENCIES(<_file> depend_files...) is just a convenience
-# wrapper around the OBJECT_DEPENDS source file property. You can just
-# use set_property(SOURCE <file> APPEND PROPERTY OBJECT_DEPENDS depend_files) instead.
+# MACRO_ADD_FILE_DEPENDENCIES(<_file> depend_files...)
+#
+# Using the macro MACRO_ADD_FILE_DEPENDENCIES() is discouraged. There
+# are usually better ways to specify the correct dependencies.
+#
+# MACRO_ADD_FILE_DEPENDENCIES(<_file> depend_files...) is just a
+# convenience wrapper around the OBJECT_DEPENDS source file property.
+# You can just use set_property(SOURCE <file> APPEND PROPERTY
+# OBJECT_DEPENDS depend_files) instead.
#=============================================================================
# Copyright 2006-2009 Kitware, Inc.
diff --git a/Modules/ProcessorCount.cmake b/Modules/ProcessorCount.cmake
index 0d1dfda164..22ee7765cd 100644
--- a/Modules/ProcessorCount.cmake
+++ b/Modules/ProcessorCount.cmake
@@ -1,30 +1,41 @@
-# - ProcessorCount(var)
+#.rst:
+# ProcessorCount
+# --------------
+#
+# ProcessorCount(var)
+#
# Determine the number of processors/cores and save value in ${var}
#
-# Sets the variable named ${var} to the number of physical cores available on
-# the machine if the information can be determined. Otherwise it is set to 0.
-# Currently this functionality is implemented for AIX, cygwin, FreeBSD, HPUX,
-# IRIX, Linux, Mac OS X, QNX, Sun and Windows.
+# Sets the variable named ${var} to the number of physical cores
+# available on the machine if the information can be determined.
+# Otherwise it is set to 0. Currently this functionality is implemented
+# for AIX, cygwin, FreeBSD, HPUX, IRIX, Linux, Mac OS X, QNX, Sun and
+# Windows.
#
# This function is guaranteed to return a positive integer (>=1) if it
-# succeeds. It returns 0 if there's a problem determining the processor count.
+# succeeds. It returns 0 if there's a problem determining the processor
+# count.
#
# Example use, in a ctest -S dashboard script:
#
-# include(ProcessorCount)
-# ProcessorCount(N)
-# if(NOT N EQUAL 0)
-# set(CTEST_BUILD_FLAGS -j${N})
-# set(ctest_test_args ${ctest_test_args} PARALLEL_LEVEL ${N})
-# endif()
+# ::
+#
+# include(ProcessorCount)
+# ProcessorCount(N)
+# if(NOT N EQUAL 0)
+# set(CTEST_BUILD_FLAGS -j${N})
+# set(ctest_test_args ${ctest_test_args} PARALLEL_LEVEL ${N})
+# endif()
+#
+#
#
-# This function is intended to offer an approximation of the value of the
-# number of compute cores available on the current machine, such that you
-# may use that value for parallel building and parallel testing. It is meant
-# to help utilize as much of the machine as seems reasonable. Of course,
-# knowledge of what else might be running on the machine simultaneously
-# should be used when deciding whether to request a machine's full capacity
-# all for yourself.
+# This function is intended to offer an approximation of the value of
+# the number of compute cores available on the current machine, such
+# that you may use that value for parallel building and parallel
+# testing. It is meant to help utilize as much of the machine as seems
+# reasonable. Of course, knowledge of what else might be running on the
+# machine simultaneously should be used when deciding whether to request
+# a machine's full capacity all for yourself.
# A more reliable way might be to compile a small C program that uses the CPUID
# instruction, but that again requires compiler support or compiling assembler
diff --git a/Modules/Qt4ConfigDependentSettings.cmake b/Modules/Qt4ConfigDependentSettings.cmake
index 88dc8ec5d6..03fb8449a2 100644
--- a/Modules/Qt4ConfigDependentSettings.cmake
+++ b/Modules/Qt4ConfigDependentSettings.cmake
@@ -1,3 +1,9 @@
+#.rst:
+# Qt4ConfigDependentSettings
+# --------------------------
+#
+#
+#
# This file is included by FindQt4.cmake, don't include it directly.
#=============================================================================
diff --git a/Modules/Qt4Macros.cmake b/Modules/Qt4Macros.cmake
index 74bad89ce5..e56634d68f 100644
--- a/Modules/Qt4Macros.cmake
+++ b/Modules/Qt4Macros.cmake
@@ -1,3 +1,9 @@
+#.rst:
+# Qt4Macros
+# ---------
+#
+#
+#
# This file is included by FindQt4.cmake, don't include it directly.
#=============================================================================
diff --git a/Modules/SelectLibraryConfigurations.cmake b/Modules/SelectLibraryConfigurations.cmake
index 297e1d3bd4..d7108562b1 100644
--- a/Modules/SelectLibraryConfigurations.cmake
+++ b/Modules/SelectLibraryConfigurations.cmake
@@ -1,20 +1,28 @@
+#.rst:
+# SelectLibraryConfigurations
+# ---------------------------
+#
+#
+#
# select_library_configurations( basename )
#
-# This macro takes a library base name as an argument, and will choose good
-# values for basename_LIBRARY, basename_LIBRARIES, basename_LIBRARY_DEBUG, and
-# basename_LIBRARY_RELEASE depending on what has been found and set. If only
-# basename_LIBRARY_RELEASE is defined, basename_LIBRARY will be set to the
-# release value, and basename_LIBRARY_DEBUG will be set to
-# basename_LIBRARY_DEBUG-NOTFOUND. If only basename_LIBRARY_DEBUG is defined,
-# then basename_LIBRARY will take the debug value, and basename_LIBRARY_RELEASE
-# will be set to basename_LIBRARY_RELEASE-NOTFOUND.
+# This macro takes a library base name as an argument, and will choose
+# good values for basename_LIBRARY, basename_LIBRARIES,
+# basename_LIBRARY_DEBUG, and basename_LIBRARY_RELEASE depending on what
+# has been found and set. If only basename_LIBRARY_RELEASE is defined,
+# basename_LIBRARY will be set to the release value, and
+# basename_LIBRARY_DEBUG will be set to basename_LIBRARY_DEBUG-NOTFOUND.
+# If only basename_LIBRARY_DEBUG is defined, then basename_LIBRARY will
+# take the debug value, and basename_LIBRARY_RELEASE will be set to
+# basename_LIBRARY_RELEASE-NOTFOUND.
#
-# If the generator supports configuration types, then basename_LIBRARY and
-# basename_LIBRARIES will be set with debug and optimized flags specifying the
-# library to be used for the given configuration. If no build type has been set
-# or the generator in use does not support configuration types, then
-# basename_LIBRARY and basename_LIBRARIES will take only the release value, or
-# the debug value if the release one is not set.
+# If the generator supports configuration types, then basename_LIBRARY
+# and basename_LIBRARIES will be set with debug and optimized flags
+# specifying the library to be used for the given configuration. If no
+# build type has been set or the generator in use does not support
+# configuration types, then basename_LIBRARY and basename_LIBRARIES will
+# take only the release value, or the debug value if the release one is
+# not set.
#=============================================================================
# Copyright 2009 Will Dicharry <wdicharry@stellarscience.com>
diff --git a/Modules/SquishTestScript.cmake b/Modules/SquishTestScript.cmake
index f794b3eee0..d6487499e3 100644
--- a/Modules/SquishTestScript.cmake
+++ b/Modules/SquishTestScript.cmake
@@ -1,13 +1,18 @@
+#.rst:
+# SquishTestScript
+# ----------------
#
-# This script launches a GUI test using Squish. You should not call
-# the script directly; instead, you should access it via the
-# SQUISH_ADD_TEST macro that is defined in FindSquish.cmake.
#
-# This script starts the Squish server, launches the test on the
-# client, and finally stops the squish server. If any of these steps
-# fail (including if the tests do not pass) then a fatal error is
-# raised.
#
+#
+#
+# This script launches a GUI test using Squish. You should not call the
+# script directly; instead, you should access it via the SQUISH_ADD_TEST
+# macro that is defined in FindSquish.cmake.
+#
+# This script starts the Squish server, launches the test on the client,
+# and finally stops the squish server. If any of these steps fail
+# (including if the tests do not pass) then a fatal error is raised.
#=============================================================================
# Copyright 2008-2009 Kitware, Inc.
diff --git a/Modules/TestBigEndian.cmake b/Modules/TestBigEndian.cmake
index 193df8fdad..675aaa373b 100644
--- a/Modules/TestBigEndian.cmake
+++ b/Modules/TestBigEndian.cmake
@@ -1,8 +1,15 @@
-# - Define macro to determine endian type
+#.rst:
+# TestBigEndian
+# -------------
+#
+# Define macro to determine endian type
+#
# Check if the system is big endian or little endian
-# TEST_BIG_ENDIAN(VARIABLE)
-# VARIABLE - variable to store the result to
#
+# ::
+#
+# TEST_BIG_ENDIAN(VARIABLE)
+# VARIABLE - variable to store the result to
#=============================================================================
# Copyright 2002-2009 Kitware, Inc.
diff --git a/Modules/TestCXXAcceptsFlag.cmake b/Modules/TestCXXAcceptsFlag.cmake
index 2694737ef1..2bcbea6c39 100644
--- a/Modules/TestCXXAcceptsFlag.cmake
+++ b/Modules/TestCXXAcceptsFlag.cmake
@@ -1,11 +1,17 @@
-# - Test CXX compiler for a flag
+#.rst:
+# TestCXXAcceptsFlag
+# ------------------
+#
+# Test CXX compiler for a flag
+#
# Check if the CXX compiler accepts a flag
#
-# Macro CHECK_CXX_ACCEPTS_FLAG(FLAGS VARIABLE) -
-# checks if the function exists
-# FLAGS - the flags to try
-# VARIABLE - variable to store the result
+# ::
#
+# Macro CHECK_CXX_ACCEPTS_FLAG(FLAGS VARIABLE) -
+# checks if the function exists
+# FLAGS - the flags to try
+# VARIABLE - variable to store the result
#=============================================================================
# Copyright 2002-2009 Kitware, Inc.
diff --git a/Modules/TestForANSIForScope.cmake b/Modules/TestForANSIForScope.cmake
index 9b4d51cda0..de4b1f1772 100644
--- a/Modules/TestForANSIForScope.cmake
+++ b/Modules/TestForANSIForScope.cmake
@@ -1,7 +1,15 @@
-# - Check for ANSI for scope support
-# Check if the compiler restricts the scope of variables declared in a for-init-statement to the loop body.
-# CMAKE_NO_ANSI_FOR_SCOPE - holds result
+#.rst:
+# TestForANSIForScope
+# -------------------
#
+# Check for ANSI for scope support
+#
+# Check if the compiler restricts the scope of variables declared in a
+# for-init-statement to the loop body.
+#
+# ::
+#
+# CMAKE_NO_ANSI_FOR_SCOPE - holds result
#=============================================================================
# Copyright 2002-2009 Kitware, Inc.
diff --git a/Modules/TestForANSIStreamHeaders.cmake b/Modules/TestForANSIStreamHeaders.cmake
index 060b3a43ac..c13000b707 100644
--- a/Modules/TestForANSIStreamHeaders.cmake
+++ b/Modules/TestForANSIStreamHeaders.cmake
@@ -1,7 +1,15 @@
-# - Test for compiler support of ANSI stream headers iostream, etc.
-# check if the compiler supports the standard ANSI iostream header (without the .h)
-# CMAKE_NO_ANSI_STREAM_HEADERS - defined by the results
+#.rst:
+# TestForANSIStreamHeaders
+# ------------------------
#
+# Test for compiler support of ANSI stream headers iostream, etc.
+#
+# check if the compiler supports the standard ANSI iostream header
+# (without the .h)
+#
+# ::
+#
+# CMAKE_NO_ANSI_STREAM_HEADERS - defined by the results
#=============================================================================
# Copyright 2002-2009 Kitware, Inc.
diff --git a/Modules/TestForSSTREAM.cmake b/Modules/TestForSSTREAM.cmake
index db39c1e702..8977583a9f 100644
--- a/Modules/TestForSSTREAM.cmake
+++ b/Modules/TestForSSTREAM.cmake
@@ -1,7 +1,14 @@
-# - Test for compiler support of ANSI sstream header
+#.rst:
+# TestForSSTREAM
+# --------------
+#
+# Test for compiler support of ANSI sstream header
+#
# check if the compiler supports the standard ANSI sstream header
-# CMAKE_NO_ANSI_STRING_STREAM - defined by the results
#
+# ::
+#
+# CMAKE_NO_ANSI_STRING_STREAM - defined by the results
#=============================================================================
# Copyright 2006-2009 Kitware, Inc.
diff --git a/Modules/TestForSTDNamespace.cmake b/Modules/TestForSTDNamespace.cmake
index 6a75644450..e43b75df61 100644
--- a/Modules/TestForSTDNamespace.cmake
+++ b/Modules/TestForSTDNamespace.cmake
@@ -1,7 +1,14 @@
-# - Test for std:: namespace support
+#.rst:
+# TestForSTDNamespace
+# -------------------
+#
+# Test for std:: namespace support
+#
# check if the compiler supports std:: on stl classes
-# CMAKE_NO_STD_NAMESPACE - defined by the results
#
+# ::
+#
+# CMAKE_NO_STD_NAMESPACE - defined by the results
#=============================================================================
# Copyright 2002-2009 Kitware, Inc.
diff --git a/Modules/UseEcos.cmake b/Modules/UseEcos.cmake
index 0c4fee4e10..3bd92ca230 100644
--- a/Modules/UseEcos.cmake
+++ b/Modules/UseEcos.cmake
@@ -1,20 +1,29 @@
-# - This module defines variables and macros required to build eCos application.
+#.rst:
+# UseEcos
+# -------
+#
+# This module defines variables and macros required to build eCos application.
+#
# This file contains the following macros:
# ECOS_ADD_INCLUDE_DIRECTORIES() - add the eCos include dirs
-# ECOS_ADD_EXECUTABLE(name source1 ... sourceN ) - create an eCos executable
-# ECOS_ADJUST_DIRECTORY(VAR source1 ... sourceN ) - adjusts the path of the source files and puts the result into VAR
+# ECOS_ADD_EXECUTABLE(name source1 ... sourceN ) - create an eCos
+# executable ECOS_ADJUST_DIRECTORY(VAR source1 ... sourceN ) - adjusts
+# the path of the source files and puts the result into VAR
+#
+# Macros for selecting the toolchain: ECOS_USE_ARM_ELF_TOOLS() - enable
+# the ARM ELF toolchain for the directory where it is called
+# ECOS_USE_I386_ELF_TOOLS() - enable the i386 ELF toolchain for the
+# directory where it is called ECOS_USE_PPC_EABI_TOOLS() - enable the
+# PowerPC toolchain for the directory where it is called
+#
+# It contains the following variables: ECOS_DEFINITIONS
+# ECOSCONFIG_EXECUTABLE ECOS_CONFIG_FILE - defaults to ecos.ecc, if your
+# eCos configuration file has a different name, adjust this variable for
+# internal use only:
#
-# Macros for selecting the toolchain:
-# ECOS_USE_ARM_ELF_TOOLS() - enable the ARM ELF toolchain for the directory where it is called
-# ECOS_USE_I386_ELF_TOOLS() - enable the i386 ELF toolchain for the directory where it is called
-# ECOS_USE_PPC_EABI_TOOLS() - enable the PowerPC toolchain for the directory where it is called
+# ::
#
-# It contains the following variables:
-# ECOS_DEFINITIONS
-# ECOSCONFIG_EXECUTABLE
-# ECOS_CONFIG_FILE - defaults to ecos.ecc, if your eCos configuration file has a different name, adjust this variable
-# for internal use only:
-# ECOS_ADD_TARGET_LIB
+# ECOS_ADD_TARGET_LIB
#=============================================================================
# Copyright 2006-2009 Kitware, Inc.
diff --git a/Modules/UseJava.cmake b/Modules/UseJava.cmake
index c9635b5ec7..f7f242b4b8 100644
--- a/Modules/UseJava.cmake
+++ b/Modules/UseJava.cmake
@@ -1,120 +1,220 @@
-# - Use Module for Java
-# This file provides functions for Java. It is assumed that FindJava.cmake
-# has already been loaded. See FindJava.cmake for information on how to
-# load Java into your CMake project.
+#.rst:
+# UseJava
+# -------
+#
+# Use Module for Java
+#
+# This file provides functions for Java. It is assumed that
+# FindJava.cmake has already been loaded. See FindJava.cmake for
+# information on how to load Java into your CMake project.
#
# add_jar(target_name
-# [SOURCES] source1 [source2 ...] [resource1 ...]
-# [INCLUDE_JARS jar1 [jar2 ...]]
-# [ENTRY_POINT entry]
-# [VERSION version]
-# [OUTPUT_NAME name]
-# [OUTPUT_DIR dir]
-# )
-#
-# This command creates a <target_name>.jar. It compiles the given source files
-# (source) and adds the given resource files (resource) to the jar file. If
-# only resource files are given then just a jar file is created. The list of
-# include jars are added to the classpath when compiling the java sources and
-# also to the dependencies of the target. INCLUDE_JARS also accepts other
-# target names created by add_jar. For backwards compatibility, jar files
-# listed as sources are ignored (as they have been since the first version of
-# this module).
+#
+# ::
+#
+# [SOURCES] source1 [source2 ...] [resource1 ...]
+# [INCLUDE_JARS jar1 [jar2 ...]]
+# [ENTRY_POINT entry]
+# [VERSION version]
+# [OUTPUT_NAME name]
+# [OUTPUT_DIR dir]
+# )
+#
+#
+#
+# This command creates a <target_name>.jar. It compiles the given
+# source files (source) and adds the given resource files (resource) to
+# the jar file. If only resource files are given then just a jar file
+# is created. The list of include jars are added to the classpath when
+# compiling the java sources and also to the dependencies of the target.
+# INCLUDE_JARS also accepts other target names created by add_jar. For
+# backwards compatibility, jar files listed as sources are ignored (as
+# they have been since the first version of this module).
#
# The default OUTPUT_DIR can also be changed by setting the variable
# CMAKE_JAVA_TARGET_OUTPUT_DIR.
#
# Additional instructions:
-# To add compile flags to the target you can set these flags with
-# the following variable:
#
-# set(CMAKE_JAVA_COMPILE_FLAGS -nowarn)
+# ::
+#
+# To add compile flags to the target you can set these flags with
+# the following variable:
+#
+#
+#
+# ::
+#
+# set(CMAKE_JAVA_COMPILE_FLAGS -nowarn)
+#
+#
+#
+# ::
+#
+# To add a path or a jar file to the class path you can do this
+# with the CMAKE_JAVA_INCLUDE_PATH variable.
+#
+#
+#
+# ::
+#
+# set(CMAKE_JAVA_INCLUDE_PATH /usr/share/java/shibboleet.jar)
+#
+#
+#
+# ::
+#
+# To use a different output name for the target you can set it with:
+#
+#
+#
+# ::
+#
+# add_jar(foobar foobar.java OUTPUT_NAME shibboleet.jar)
+#
+#
+#
+# ::
+#
+# To use a different output directory than CMAKE_CURRENT_BINARY_DIR
+# you can set it with:
+#
+#
+#
+# ::
+#
+# add_jar(foobar foobar.java OUTPUT_DIR ${PROJECT_BINARY_DIR}/bin)
+#
+#
+#
+# ::
+#
+# To define an entry point in your jar you can set it with the ENTRY_POINT
+# named argument:
+#
+#
+#
+# ::
+#
+# add_jar(example ENTRY_POINT com/examples/MyProject/Main)
+#
+#
+#
+# ::
+#
+# To define a custom manifest for the jar, you can set it with the manifest
+# named argument:
+#
#
-# To add a path or a jar file to the class path you can do this
-# with the CMAKE_JAVA_INCLUDE_PATH variable.
#
-# set(CMAKE_JAVA_INCLUDE_PATH /usr/share/java/shibboleet.jar)
+# ::
#
-# To use a different output name for the target you can set it with:
+# add_jar(example MANIFEST /path/to/manifest)
#
-# add_jar(foobar foobar.java OUTPUT_NAME shibboleet.jar)
#
-# To use a different output directory than CMAKE_CURRENT_BINARY_DIR
-# you can set it with:
#
-# add_jar(foobar foobar.java OUTPUT_DIR ${PROJECT_BINARY_DIR}/bin)
+# ::
#
-# To define an entry point in your jar you can set it with the ENTRY_POINT
-# named argument:
+# To add a VERSION to the target output name you can set it using
+# the VERSION named argument to add_jar. This will create a jar file with the
+# name shibboleet-1.0.0.jar and will create a symlink shibboleet.jar
+# pointing to the jar with the version information.
#
-# add_jar(example ENTRY_POINT com/examples/MyProject/Main)
#
-# To define a custom manifest for the jar, you can set it with the manifest
-# named argument:
#
-# add_jar(example MANIFEST /path/to/manifest)
+# ::
#
-# To add a VERSION to the target output name you can set it using
-# the VERSION named argument to add_jar. This will create a jar file with the
-# name shibboleet-1.0.0.jar and will create a symlink shibboleet.jar
-# pointing to the jar with the version information.
+# add_jar(shibboleet shibbotleet.java VERSION 1.2.0)
#
-# add_jar(shibboleet shibbotleet.java VERSION 1.2.0)
#
-# If the target is a JNI library, utilize the following commands to
-# create a JNI symbolic link:
#
-# set(CMAKE_JNI_TARGET TRUE)
-# add_jar(shibboleet shibbotleet.java VERSION 1.2.0)
-# install_jar(shibboleet ${LIB_INSTALL_DIR}/shibboleet)
-# install_jni_symlink(shibboleet ${JAVA_LIB_INSTALL_DIR})
+# ::
#
-# If a single target needs to produce more than one jar from its
-# java source code, to prevent the accumulation of duplicate class
-# files in subsequent jars, set/reset CMAKE_JAR_CLASSES_PREFIX prior
-# to calling the add_jar() function:
+# If the target is a JNI library, utilize the following commands to
+# create a JNI symbolic link:
+#
+#
+#
+# ::
+#
+# set(CMAKE_JNI_TARGET TRUE)
+# add_jar(shibboleet shibbotleet.java VERSION 1.2.0)
+# install_jar(shibboleet ${LIB_INSTALL_DIR}/shibboleet)
+# install_jni_symlink(shibboleet ${JAVA_LIB_INSTALL_DIR})
+#
+#
+#
+# ::
+#
+# If a single target needs to produce more than one jar from its
+# java source code, to prevent the accumulation of duplicate class
+# files in subsequent jars, set/reset CMAKE_JAR_CLASSES_PREFIX prior
+# to calling the add_jar() function:
+#
+#
+#
+# ::
+#
+# set(CMAKE_JAR_CLASSES_PREFIX com/redhat/foo)
+# add_jar(foo foo.java)
+#
+#
+#
+# ::
+#
+# set(CMAKE_JAR_CLASSES_PREFIX com/redhat/bar)
+# add_jar(bar bar.java)
#
-# set(CMAKE_JAR_CLASSES_PREFIX com/redhat/foo)
-# add_jar(foo foo.java)
#
-# set(CMAKE_JAR_CLASSES_PREFIX com/redhat/bar)
-# add_jar(bar bar.java)
#
# Target Properties:
-# The add_jar() functions sets some target properties. You can get these
-# properties with the
-# get_property(TARGET <target_name> PROPERTY <propery_name>)
-# command.
-#
-# INSTALL_FILES The files which should be installed. This is used by
-# install_jar().
-# JNI_SYMLINK The JNI symlink which should be installed.
-# This is used by install_jni_symlink().
-# JAR_FILE The location of the jar file so that you can include
-# it.
-# CLASS_DIR The directory where the class files can be found. For
-# example to use them with javah.
+#
+# ::
+#
+# The add_jar() functions sets some target properties. You can get these
+# properties with the
+# get_property(TARGET <target_name> PROPERTY <propery_name>)
+# command.
+#
+#
+#
+# ::
+#
+# INSTALL_FILES The files which should be installed. This is used by
+# install_jar().
+# JNI_SYMLINK The JNI symlink which should be installed.
+# This is used by install_jni_symlink().
+# JAR_FILE The location of the jar file so that you can include
+# it.
+# CLASS_DIR The directory where the class files can be found. For
+# example to use them with javah.
+#
+#
#
# find_jar(<VAR>
-# name | NAMES name1 [name2 ...]
-# [PATHS path1 [path2 ... ENV var]]
-# [VERSIONS version1 [version2]]
-# [DOC "cache documentation string"]
-# )
#
-# This command is used to find a full path to the named jar. A cache
-# entry named by <VAR> is created to stor the result of this command. If
-# the full path to a jar is found the result is stored in the variable
-# and the search will not repeated unless the variable is cleared. If
-# nothing is found, the result will be <VAR>-NOTFOUND, and the search
-# will be attempted again next time find_jar is invoked with the same
-# variable.
-# The name of the full path to a file that is searched for is specified
-# by the names listed after NAMES argument. Additional search locations
-# can be specified after the PATHS argument. If you require special a
-# version of a jar file you can specify it with the VERSIONS argument.
-# The argument after DOC will be used for the documentation string in
-# the cache.
+# ::
+#
+# name | NAMES name1 [name2 ...]
+# [PATHS path1 [path2 ... ENV var]]
+# [VERSIONS version1 [version2]]
+# [DOC "cache documentation string"]
+# )
+#
+#
+#
+# This command is used to find a full path to the named jar. A cache
+# entry named by <VAR> is created to stor the result of this command.
+# If the full path to a jar is found the result is stored in the
+# variable and the search will not repeated unless the variable is
+# cleared. If nothing is found, the result will be <VAR>-NOTFOUND, and
+# the search will be attempted again next time find_jar is invoked with
+# the same variable. The name of the full path to a file that is
+# searched for is specified by the names listed after NAMES argument.
+# Additional search locations can be specified after the PATHS argument.
+# If you require special a version of a jar file you can specify it with
+# the VERSIONS argument. The argument after DOC will be used for the
+# documentation string in the cache.
#
# install_jar(TARGET_NAME DESTINATION)
#
@@ -124,75 +224,95 @@
# install_jni_symlink(TARGET_NAME DESTINATION)
#
# This command installs the TARGET_NAME JNI symlinks to the given
-# DESTINATION. It should be called in the same scope as add_jar()
-# or it will fail.
+# DESTINATION. It should be called in the same scope as add_jar() or it
+# will fail.
#
# create_javadoc(<VAR>
-# PACKAGES pkg1 [pkg2 ...]
-# [SOURCEPATH <sourcepath>]
-# [CLASSPATH <classpath>]
-# [INSTALLPATH <install path>]
-# [DOCTITLE "the documentation title"]
-# [WINDOWTITLE "the title of the document"]
-# [AUTHOR TRUE|FALSE]
-# [USE TRUE|FALSE]
-# [VERSION TRUE|FALSE]
-# )
-#
-# Create java documentation based on files or packages. For more
+#
+# ::
+#
+# PACKAGES pkg1 [pkg2 ...]
+# [SOURCEPATH <sourcepath>]
+# [CLASSPATH <classpath>]
+# [INSTALLPATH <install path>]
+# [DOCTITLE "the documentation title"]
+# [WINDOWTITLE "the title of the document"]
+# [AUTHOR TRUE|FALSE]
+# [USE TRUE|FALSE]
+# [VERSION TRUE|FALSE]
+# )
+#
+#
+#
+# Create java documentation based on files or packages. For more
# details please read the javadoc manpage.
#
-# There are two main signatures for create_javadoc. The first
-# signature works with package names on a path with source files:
-#
-# Example:
-# create_javadoc(my_example_doc
-# PACKAGES com.exmaple.foo com.example.bar
-# SOURCEPATH "${CMAKE_CURRENT_SOURCE_DIR}"
-# CLASSPATH ${CMAKE_JAVA_INCLUDE_PATH}
-# WINDOWTITLE "My example"
-# DOCTITLE "<h1>My example</h1>"
-# AUTHOR TRUE
-# USE TRUE
-# VERSION TRUE
-# )
+# There are two main signatures for create_javadoc. The first signature
+# works with package names on a path with source files:
+#
+# ::
+#
+# Example:
+# create_javadoc(my_example_doc
+# PACKAGES com.exmaple.foo com.example.bar
+# SOURCEPATH "${CMAKE_CURRENT_SOURCE_DIR}"
+# CLASSPATH ${CMAKE_JAVA_INCLUDE_PATH}
+# WINDOWTITLE "My example"
+# DOCTITLE "<h1>My example</h1>"
+# AUTHOR TRUE
+# USE TRUE
+# VERSION TRUE
+# )
+#
+#
#
# The second signature for create_javadoc works on a given list of
# files.
#
-# create_javadoc(<VAR>
-# FILES file1 [file2 ...]
-# [CLASSPATH <classpath>]
-# [INSTALLPATH <install path>]
-# [DOCTITLE "the documentation title"]
-# [WINDOWTITLE "the title of the document"]
-# [AUTHOR TRUE|FALSE]
-# [USE TRUE|FALSE]
-# [VERSION TRUE|FALSE]
-# )
+# ::
+#
+# create_javadoc(<VAR>
+# FILES file1 [file2 ...]
+# [CLASSPATH <classpath>]
+# [INSTALLPATH <install path>]
+# [DOCTITLE "the documentation title"]
+# [WINDOWTITLE "the title of the document"]
+# [AUTHOR TRUE|FALSE]
+# [USE TRUE|FALSE]
+# [VERSION TRUE|FALSE]
+# )
+#
+#
#
# Example:
-# create_javadoc(my_example_doc
-# FILES ${example_SRCS}
-# CLASSPATH ${CMAKE_JAVA_INCLUDE_PATH}
-# WINDOWTITLE "My example"
-# DOCTITLE "<h1>My example</h1>"
-# AUTHOR TRUE
-# USE TRUE
-# VERSION TRUE
-# )
-#
-# Both signatures share most of the options. These options are the
-# same as what you can find in the javadoc manpage. Please look at
-# the manpage for CLASSPATH, DOCTITLE, WINDOWTITLE, AUTHOR, USE and
-# VERSION.
+#
+# ::
+#
+# create_javadoc(my_example_doc
+# FILES ${example_SRCS}
+# CLASSPATH ${CMAKE_JAVA_INCLUDE_PATH}
+# WINDOWTITLE "My example"
+# DOCTITLE "<h1>My example</h1>"
+# AUTHOR TRUE
+# USE TRUE
+# VERSION TRUE
+# )
+#
+#
+#
+# Both signatures share most of the options. These options are the same
+# as what you can find in the javadoc manpage. Please look at the
+# manpage for CLASSPATH, DOCTITLE, WINDOWTITLE, AUTHOR, USE and VERSION.
#
# The documentation will be by default installed to
#
-# ${CMAKE_INSTALL_PREFIX}/share/javadoc/<VAR>
+# ::
#
-# if you don't set the INSTALLPATH.
+# ${CMAKE_INSTALL_PREFIX}/share/javadoc/<VAR>
#
+#
+#
+# if you don't set the INSTALLPATH.
#=============================================================================
# Copyright 2013 OpenGamma Ltd. <graham@opengamma.com>
diff --git a/Modules/UseJavaClassFilelist.cmake b/Modules/UseJavaClassFilelist.cmake
index 6f3a4e7a98..e8e6f014cf 100644
--- a/Modules/UseJavaClassFilelist.cmake
+++ b/Modules/UseJavaClassFilelist.cmake
@@ -1,8 +1,14 @@
+#.rst:
+# UseJavaClassFilelist
+# --------------------
#
-# This script create a list of compiled Java class files to be added to a
-# jar file. This avoids including cmake files which get created in the
-# binary directory.
#
+#
+#
+#
+# This script create a list of compiled Java class files to be added to
+# a jar file. This avoids including cmake files which get created in
+# the binary directory.
#=============================================================================
# Copyright 2010-2011 Andreas schneider <asn@redhat.com>
diff --git a/Modules/UseJavaSymlinks.cmake b/Modules/UseJavaSymlinks.cmake
index 88dd7689c8..90ffdd5357 100644
--- a/Modules/UseJavaSymlinks.cmake
+++ b/Modules/UseJavaSymlinks.cmake
@@ -1,6 +1,12 @@
+#.rst:
+# UseJavaSymlinks
+# ---------------
+#
+#
#
-# Helper script for UseJava.cmake
#
+#
+# Helper script for UseJava.cmake
#=============================================================================
# Copyright 2010-2011 Andreas schneider <asn@redhat.com>
diff --git a/Modules/UsePkgConfig.cmake b/Modules/UsePkgConfig.cmake
index b1569f9da8..6a38502ca6 100644
--- a/Modules/UsePkgConfig.cmake
+++ b/Modules/UsePkgConfig.cmake
@@ -1,15 +1,21 @@
-# - Obsolete pkg-config module for CMake, use FindPkgConfig instead.
+#.rst:
+# UsePkgConfig
+# ------------
+#
+# Obsolete pkg-config module for CMake, use FindPkgConfig instead.
+#
+#
#
# This module defines the following macro:
#
# PKGCONFIG(package includedir libdir linkflags cflags)
#
-# Calling PKGCONFIG will fill the desired information into the 4 given arguments,
-# e.g. PKGCONFIG(libart-2.0 LIBART_INCLUDE_DIR LIBART_LINK_DIR LIBART_LINK_FLAGS LIBART_CFLAGS)
-# if pkg-config was NOT found or the specified software package doesn't exist, the
-# variable will be empty when the function returns, otherwise they will contain
+# Calling PKGCONFIG will fill the desired information into the 4 given
+# arguments, e.g. PKGCONFIG(libart-2.0 LIBART_INCLUDE_DIR
+# LIBART_LINK_DIR LIBART_LINK_FLAGS LIBART_CFLAGS) if pkg-config was NOT
+# found or the specified software package doesn't exist, the variable
+# will be empty when the function returns, otherwise they will contain
# the respective information
-#
#=============================================================================
# Copyright 2006-2009 Kitware, Inc.
diff --git a/Modules/UseQt4.cmake b/Modules/UseQt4.cmake
index f05a3d5f36..35090fcda8 100644
--- a/Modules/UseQt4.cmake
+++ b/Modules/UseQt4.cmake
@@ -1,7 +1,12 @@
-# - Use Module for QT4
-# Sets up C and C++ to use Qt 4. It is assumed that FindQt.cmake
-# has already been loaded. See FindQt.cmake for information on
-# how to load Qt 4 into your CMake project.
+#.rst:
+# UseQt4
+# ------
+#
+# Use Module for QT4
+#
+# Sets up C and C++ to use Qt 4. It is assumed that FindQt.cmake has
+# already been loaded. See FindQt.cmake for information on how to load
+# Qt 4 into your CMake project.
#=============================================================================
# Copyright 2005-2009 Kitware, Inc.
diff --git a/Modules/UseSWIG.cmake b/Modules/UseSWIG.cmake
index 2a095854cb..00f3e21f6e 100644
--- a/Modules/UseSWIG.cmake
+++ b/Modules/UseSWIG.cmake
@@ -1,22 +1,33 @@
-# - SWIG module for CMake
+#.rst:
+# UseSWIG
+# -------
+#
+# SWIG module for CMake
+#
# Defines the following macros:
-# SWIG_ADD_MODULE(name language [ files ])
-# - Define swig module with given name and specified language
-# SWIG_LINK_LIBRARIES(name [ libraries ])
-# - Link libraries to swig module
-# All other macros are for internal use only.
-# To get the actual name of the swig module,
-# use: ${SWIG_MODULE_${name}_REAL_NAME}.
-# Set Source files properties such as CPLUSPLUS and SWIG_FLAGS to specify
-# special behavior of SWIG. Also global CMAKE_SWIG_FLAGS can be used to add
-# special flags to all swig calls.
-# Another special variable is CMAKE_SWIG_OUTDIR, it allows one to specify
-# where to write all the swig generated module (swig -outdir option)
-# The name-specific variable SWIG_MODULE_<name>_EXTRA_DEPS may be used
-# to specify extra dependencies for the generated modules.
-# If the source file generated by swig need some special flag you can use
+#
+# ::
+#
+# SWIG_ADD_MODULE(name language [ files ])
+# - Define swig module with given name and specified language
+# SWIG_LINK_LIBRARIES(name [ libraries ])
+# - Link libraries to swig module
+#
+# All other macros are for internal use only. To get the actual name of
+# the swig module, use: ${SWIG_MODULE_${name}_REAL_NAME}. Set Source
+# files properties such as CPLUSPLUS and SWIG_FLAGS to specify special
+# behavior of SWIG. Also global CMAKE_SWIG_FLAGS can be used to add
+# special flags to all swig calls. Another special variable is
+# CMAKE_SWIG_OUTDIR, it allows one to specify where to write all the
+# swig generated module (swig -outdir option) The name-specific variable
+# SWIG_MODULE_<name>_EXTRA_DEPS may be used to specify extra
+# dependencies for the generated modules. If the source file generated
+# by swig need some special flag you can use
# set_source_files_properties( ${swig_generated_file_fullname}
-# PROPERTIES COMPILE_FLAGS "-bla")
+#
+# ::
+#
+# PROPERTIES COMPILE_FLAGS "-bla")
#=============================================================================
diff --git a/Modules/Use_wxWindows.cmake b/Modules/Use_wxWindows.cmake
index 6c95681e22..d21c303e53 100644
--- a/Modules/Use_wxWindows.cmake
+++ b/Modules/Use_wxWindows.cmake
@@ -1,17 +1,33 @@
+#.rst:
+# Use_wxWindows
+# -------------
+#
+# ---------------------------------------------------
+#
+#
+#
+# This convenience include finds if wxWindows is installed and set the
+# appropriate libs, incdirs, flags etc. author Jan Woetzel <jw -at-
+# mip.informatik.uni-kiel.de> (07/2003)
#
-# This convenience include finds if wxWindows is installed
-# and set the appropriate libs, incdirs, flags etc.
-# author Jan Woetzel <jw -at- mip.informatik.uni-kiel.de> (07/2003)
-##
-# -----------------------------------------------------
# USAGE:
-# just include Use_wxWindows.cmake
-# in your projects CMakeLists.txt
+#
+# ::
+#
+# just include Use_wxWindows.cmake
+# in your projects CMakeLists.txt
+#
# include( ${CMAKE_MODULE_PATH}/Use_wxWindows.cmake)
-##
-# if you are sure you need GL then
+#
+# ::
+#
+# if you are sure you need GL then
+#
# set(WXWINDOWS_USE_GL 1)
-# *before* you include this file.
+#
+# ::
+#
+# *before* you include this file.
#=============================================================================
# Copyright 2003-2009 Kitware, Inc.
diff --git a/Modules/UsewxWidgets.cmake b/Modules/UsewxWidgets.cmake
index bb8c29b3e6..f2f260df59 100644
--- a/Modules/UsewxWidgets.cmake
+++ b/Modules/UsewxWidgets.cmake
@@ -1,19 +1,38 @@
-# - Convenience include for using wxWidgets library.
-# Determines if wxWidgets was FOUND and sets the appropriate libs, incdirs,
-# flags, etc. INCLUDE_DIRECTORIES and LINK_DIRECTORIES are called.
+#.rst:
+# UsewxWidgets
+# ------------
+#
+# Convenience include for using wxWidgets library.
+#
+# Determines if wxWidgets was FOUND and sets the appropriate libs,
+# incdirs, flags, etc. INCLUDE_DIRECTORIES and LINK_DIRECTORIES are
+# called.
#
# USAGE
-# # Note that for MinGW users the order of libs is important!
-# find_package(wxWidgets REQUIRED net gl core base)
-# include(${wxWidgets_USE_FILE})
-# # and for each of your dependent executable/library targets:
-# target_link_libraries(<YourTarget> ${wxWidgets_LIBRARIES})
+#
+# ::
+#
+# # Note that for MinGW users the order of libs is important!
+# find_package(wxWidgets REQUIRED net gl core base)
+# include(${wxWidgets_USE_FILE})
+# # and for each of your dependent executable/library targets:
+# target_link_libraries(<YourTarget> ${wxWidgets_LIBRARIES})
+#
+#
#
# DEPRECATED
-# LINK_LIBRARIES is not called in favor of adding dependencies per target.
+#
+# ::
+#
+# LINK_LIBRARIES is not called in favor of adding dependencies per target.
+#
+#
#
# AUTHOR
-# Jan Woetzel <jw -at- mip.informatik.uni-kiel.de>
+#
+# ::
+#
+# Jan Woetzel <jw -at- mip.informatik.uni-kiel.de>
#=============================================================================
# Copyright 2004-2009 Kitware, Inc.
diff --git a/Modules/WriteBasicConfigVersionFile.cmake b/Modules/WriteBasicConfigVersionFile.cmake
index 4466cd7977..95187b4069 100644
--- a/Modules/WriteBasicConfigVersionFile.cmake
+++ b/Modules/WriteBasicConfigVersionFile.cmake
@@ -1,4 +1,14 @@
-# WRITE_BASIC_CONFIG_VERSION_FILE( filename VERSION major.minor.patch COMPATIBILITY (AnyNewerVersion|SameMajorVersion) )
+#.rst:
+# WriteBasicConfigVersionFile
+# ---------------------------
+#
+#
+#
+# ::
+#
+# WRITE_BASIC_CONFIG_VERSION_FILE( filename VERSION major.minor.patch COMPATIBILITY (AnyNewerVersion|SameMajorVersion) )
+#
+#
#
# Deprecated, see WRITE_BASIC_PACKAGE_VERSION_FILE(), it is identical.