Commit 0e4fbb4a authored by Bartosz Kosiorek's avatar Bartosz Kosiorek

Help: Improve formatting of Help documentation

parent ffcb4f7e
......@@ -54,7 +54,7 @@ unspecified.
export(PACKAGE <PackageName>)
Store the current build directory in the CMake user package registry
for package ``<PackageName>``. The find_package command may consider the
for package ``<PackageName>``. The :command:`find_package` command may consider the
directory while searching for package ``<PackageName>``. This helps dependent
projects find and use a package from the current project's build tree
without help from the user. Note that the entry in the package
......
......@@ -180,7 +180,7 @@ sets these variables:
These variables are checked by the ``find_package`` command to determine
whether the configuration file provides an acceptable version. They
are not available after the find_package call returns. If the version
are not available after the ``find_package`` call returns. If the version
is acceptable the following variables are set:
``<PackageName>_VERSION``
......@@ -220,8 +220,8 @@ Search Procedure
CMake constructs a set of possible installation prefixes for the
package. Under each prefix several directories are searched for a
configuration file. The tables below show the directories searched.
Each entry is meant for installation trees following Windows (W), UNIX
(U), or Apple (A) conventions::
Each entry is meant for installation trees following Windows (``W``), UNIX
(``U``), or Apple (``A``) conventions::
<prefix>/ (W)
<prefix>/(cmake|CMake)/ (W)
......@@ -234,8 +234,8 @@ Each entry is meant for installation trees following Windows (W), UNIX
<prefix>/<name>*/(lib/<arch>|lib*|share)/<name>*/ (W/U)
<prefix>/<name>*/(lib/<arch>|lib*|share)/<name>*/(cmake|CMake)/ (W/U)
On systems supporting macOS Frameworks and Application Bundles the
following directories are searched for frameworks or bundles
On systems supporting macOS :prop_tgt:`FRAMEWORK`s and :prop_tgt:`BUNDLE`s the
following directories are searched for Frameworks or Application Bundles
containing a configuration file::
<prefix>/<name>.framework/Resources/ (A)
......
......@@ -18,5 +18,5 @@ tested, if that variable is false nothing else is done. If
``TEST_VARIABLE`` is true, then the next argument (``RESULT_VARIABLE``)
is a variable that is set to true if all the required variables are set.
The rest of the arguments are variables that must be true or not set
to NOTFOUND to avoid an error. If any are not true, an error is
to ``NOTFOUND`` to avoid an error. If any are not true, an error is
reported.
CPack NSIS Generator
--------------------
CPack NSIS generator specific options
CPack Nullsoft Scriptable Install System (NSIS) generator specific options
Variables specific to CPack NSIS generator
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
The following variables are specific to the graphical installers built
on Windows using the Nullsoft Installation System.
on Windows Nullsoft Scriptable Install System.
.. 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}
user is: ``${CPACK_NSIS_INSTALL_ROOT}/${CPACK_PACKAGE_INSTALL_DIRECTORY}``
.. variable:: CPACK_NSIS_MUI_ICON
......@@ -31,11 +31,11 @@ on Windows using the Nullsoft Installation System.
.. variable:: CPACK_NSIS_MUI_WELCOMEFINISHPAGE_BITMAP
The filename of a bitmap to use as the NSIS MUI_WELCOMEFINISHPAGE_BITMAP.
The filename of a bitmap to use as the NSIS ``MUI_WELCOMEFINISHPAGE_BITMAP``.
.. variable:: CPACK_NSIS_MUI_UNWELCOMEFINISHPAGE_BITMAP
The filename of a bitmap to use as the NSIS MUI_UNWELCOMEFINISHPAGE_BITMAP.
The filename of a bitmap to use as the NSIS ``MUI_UNWELCOMEFINISHPAGE_BITMAP``.
.. variable:: CPACK_NSIS_EXTRA_PREINSTALL_COMMANDS
......@@ -54,24 +54,24 @@ on Windows using the Nullsoft Installation System.
.. variable:: CPACK_NSIS_COMPRESSOR
The arguments that will be passed to the NSIS SetCompressor command.
The arguments that will be passed to the NSIS `SetCompressor command.
.. variable:: CPACK_NSIS_ENABLE_UNINSTALL_BEFORE_INSTALL
Ask about uninstalling previous versions first. If this is set to "ON",
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.
.. variable:: CPACK_NSIS_MODIFY_PATH
Modify PATH toggle. If this is set to "ON", then an extra page will appear
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.
directory should be added to the system ``PATH`` variable.
.. variable:: CPACK_NSIS_DISPLAY_NAME
The display name string that appears in the Windows Add/Remove Program
The display name string that appears in the Windows `Add/Remove Program`
control panel
.. variable:: CPACK_NSIS_PACKAGE_NAME
......@@ -97,8 +97,8 @@ on Windows using the Nullsoft Installation System.
.. variable:: CPACK_NSIS_<compName>_INSTALL_DIRECTORY
Custom install directory for the specified component <compName> instead
of $INSTDIR.
Custom install directory for the specified component ``<compName>`` instead
of ``$INSTDIR``.
.. variable:: CPACK_NSIS_CREATE_ICONS_EXTRA
......@@ -110,8 +110,8 @@ on Windows using the Nullsoft Installation System.
.. 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
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.
.. variable:: CPACK_NSIS_MUI_FINISHPAGE_RUN
......@@ -121,8 +121,8 @@ on Windows using the Nullsoft Installation System.
.. variable:: CPACK_NSIS_MENU_LINKS
Specify links in [application] menu. This should contain a list of pair
"link" "link name". The link may be a URL or a path relative to
Specify links in ``[application]`` menu. This should contain a list of pair
``link`` ``link name``. The link may be a URL or a path relative to
installation prefix. Like::
set(CPACK_NSIS_MENU_LINKS
......
......@@ -4,8 +4,9 @@ ASM<DIALECT>
.. include:: ENV_VAR.txt
Preferred executable for compiling a specific dialect of assembly language
files. ``ASM<DIALECT>`` can be ``ASM``, ``ASM_NASM``, ``ASM_MASM`` or
``ASM-ATT``. Will only be used by CMake on the first configuration to determine
files. ``ASM<DIALECT>`` can be ``ASM``, ``ASM_NASM`` (Netwide Assembler),
``ASM_MASM`` (Microsoft Assembler) or ``ASM-ATT`` (Asembler AT&T).
Will only be used by CMake on the first configuration to determine
``ASM<DIALECT>`` compiler, after which the value for ``ASM<DIALECT>`` is stored
in the cache as
:variable:`CMAKE_ASM<DIALECT>_COMPILER <CMAKE_<LANG>_COMPILER>`. For subsequent
......
......@@ -6,8 +6,8 @@ ASM<DIALECT>FLAGS
Default compilation flags to be used when compiling a specific dialect of an
assembly language. ``ASM<DIALECT>FLAGS`` can be ``ASMFLAGS``, ``ASM_NASMFLAGS``,
``ASM_MASMFLAGS`` or ``ASM-ATTFLAGS``. Will only be used by CMake on the
first configuration to determine ``ASM<DIALECT>`` default compilation flags, after
which the value for ``ASM<DIALECT>FLAGS`` is stored in the cache as
:variable:`CMAKE_ASM<DIALECT>_FLAGS <CMAKE_<LANG>_FLAGS>`. For any configuration
first configuration to determine ``ASM_<DIALECT>`` default compilation
flags, after which the value for ``ASM<DIALECT>FLAGS`` is stored in the cache as
``CMAKE_ASM<DIALECT>_FLAGS <CMAKE_<LANG>_FLAGS>``. For any configuration
run (including the first), the environment variable will be ignored if the
:variable:`CMAKE_ASM<DIALECT>_FLAGS <CMAKE_<LANG>_FLAGS>` variable is defined.
``CMAKE_ASM<DIALECT>_FLAGS <CMAKE_<LANG>_FLAGS>`` variable is defined.
......@@ -4,4 +4,4 @@ CTEST_INTERACTIVE_DEBUG_MODE
.. include:: ENV_VAR.txt
Environment variable that will exist and be set to ``1`` when a test executed
by CTest is run in interactive mode.
by :manual:`ctest(1)` is run in interactive mode.
......@@ -4,6 +4,6 @@ CTEST_OUTPUT_ON_FAILURE
.. include:: ENV_VAR.txt
Boolean environment variable that controls if the output should be logged for
failed tests. Set the value to 1, True, or ON to enable output on failure.
failed tests. Set the value to ``1``, ``True``, or ``ON`` to enable output on failure.
See :manual:`ctest(1)` for more information on controlling output of failed
tests.
......@@ -4,7 +4,7 @@ CTEST_PROGRESS_OUTPUT
.. include:: ENV_VAR.txt
Boolean environment variable that affects how :manual:`ctest <ctest(1)>`
command output reports overall progress. When set to 1, TRUE, ON or anything
command output reports overall progress. When set to ``1``, ``TRUE``, ``ON`` or anything
else that evaluates to boolean true, progress is reported by repeatedly
updating the same line. This greatly reduces the overall verbosity, but is
only supported when output is sent directly to a terminal. If the environment
......
......@@ -3,5 +3,6 @@ DASHBOARD_TEST_FROM_CTEST
.. include:: ENV_VAR.txt
Environment variable that will exist when a test executed by CTest is run
in non-interactive mode. The value will be equal to :variable:`CMAKE_VERSION`.
Environment variable that will exist when a test executed by :manual:`ctest(1)`
is run in non-interactive mode. The value will be equal to
:variable:`CMAKE_VERSION`.
......@@ -5,7 +5,7 @@
Calls to :command:`find_package(<PackageName>)` will search in prefixes
specified by the ``<PackageName>_ROOT`` environment variable, where
``<PackageName>`` is the name given to the ``find_package`` call
``<PackageName>`` is the name given to the :command:`find_package` call
and ``_ROOT`` is literal. For example, ``find_package(Foo)`` will search
prefixes specified in the ``Foo_ROOT`` environment variable (if set).
See policy :policy:`CMP0074`.
......
......@@ -14,7 +14,7 @@ Online Documentation and Community Resources
Mailing List
https://cmake.org/mailing-lists
For help and discussion about using cmake, a mailing list is
For help and discussion about using CMake, a mailing list is
provided at cmake@cmake.org. The list is member-post-only but one
may sign up on the CMake web page. Please first read the full
documentation at https://cmake.org before posting questions to
......
......@@ -9,23 +9,23 @@
``-C <initial-cache>``
Pre-load a script to populate the cache.
When cmake is first run in an empty build tree, it creates a
CMakeCache.txt file and populates it with customizable settings for
When CMake is first run in an empty build tree, it creates a
``CMakeCache.txt`` file and populates it with customizable settings for
the project. This option may be used to specify a file from which
to load cache entries before the first pass through the project's
cmake listfiles. The loaded entries take priority over the
CMake listfiles. The loaded entries take priority over the
project's default values. The given file should be a CMake script
containing SET commands that use the CACHE option, not a
containing :command:`set` commands that use the ``CACHE`` option, not a
cache-format file.
``-D <var>:<type>=<value>, -D <var>=<value>``
Create or update a cmake cache entry.
Create or update a CMake ``CACHE`` entry.
When cmake is first run in an empty build tree, it creates a
CMakeCache.txt file and populates it with customizable settings for
When CMake is first run in an empty build tree, it creates a
``CMakeCache.txt`` file and populates it with customizable settings for
the project. This option may be used to specify a setting that
takes priority over the project's default value. The option may be
repeated for as many cache entries as desired.
repeated for as many ``CACHE`` entries as desired.
If the ``:<type>`` portion is given it must be one of the types
specified by the :command:`set` command documentation for its
......@@ -39,14 +39,14 @@
``-D<var>:<type>=<value>`` or ``-D<var>=<value>``.
``-U <globbing_expr>``
Remove matching entries from CMake cache.
Remove matching entries from CMake ``CACHE``.
This option may be used to remove one or more variables from the
CMakeCache.txt file, globbing expressions using * and ? are
supported. The option may be repeated for as many cache entries as
``CMakeCache.txt`` file, globbing expressions using ``*`` and ``?`` are
supported. The option may be repeated for as many ``CACHE`` entries as
desired.
Use with care, you can make your CMakeCache.txt non-working.
Use with care, you can make your ``CMakeCache.txt`` non-working.
``-G <generator-name>``
Specify a build system generator.
......@@ -74,47 +74,47 @@
Suppress developer warnings.
Suppress warnings that are meant for the author of the
CMakeLists.txt files. By default this will also turn off
``CMakeLists.txt`` files. By default this will also turn off
deprecation warnings.
``-Wdev``
Enable developer warnings.
Enable warnings that are meant for the author of the CMakeLists.txt
Enable warnings that are meant for the author of the ``CMakeLists.txt``
files. By default this will also turn on deprecation warnings.
``-Werror=dev``
Make developer warnings errors.
Make warnings that are meant for the author of the CMakeLists.txt files
Make warnings that are meant for the author of the ``CMakeLists.txt`` files
errors. By default this will also turn on deprecated warnings as errors.
``-Wno-error=dev``
Make developer warnings not errors.
Make warnings that are meant for the author of the CMakeLists.txt files not
Make warnings that are meant for the author of the ``CMakeLists.txt`` files not
errors. By default this will also turn off deprecated warnings as errors.
``-Wdeprecated``
Enable deprecated functionality warnings.
Enable warnings for usage of deprecated functionality, that are meant
for the author of the CMakeLists.txt files.
for the author of the ``CMakeLists.txt`` files.
``-Wno-deprecated``
Suppress deprecated functionality warnings.
Suppress warnings for usage of deprecated functionality, that are meant
for the author of the CMakeLists.txt files.
for the author of the ``CMakeLists.txt`` files.
``-Werror=deprecated``
Make deprecated macro and function warnings errors.
Make warnings for usage of deprecated macros and functions, that are meant
for the author of the CMakeLists.txt files, errors.
for the author of the ``CMakeLists.txt`` files, errors.
``-Wno-error=deprecated``
Make deprecated macro and function warnings not errors.
Make warnings for usage of deprecated macros and functions, that are meant
for the author of the CMakeLists.txt files, not errors.
for the author of the ``CMakeLists.txt`` files, not errors.
......@@ -20,7 +20,7 @@ when the program is running.
CMake is a cross-platform build system generator. Projects specify
their build process with platform-independent CMake listfiles included
in each directory of a source tree with the name CMakeLists.txt.
in each directory of a source tree with the name ``CMakeLists.txt``.
Users build a project by using CMake to generate a build system for a
native tool on their platform.
......
......@@ -21,7 +21,7 @@ Binary Targets
Executables and libraries are defined using the :command:`add_executable`
and :command:`add_library` commands. The resulting binary files have
appropriate prefixes, suffixes and extensions for the platform targeted.
appropriate :prop_tgt:`PREFIX`, :prop_tgt:`SUFFIX` and extensions for the platform targeted.
Dependencies between binary targets are expressed using the
:command:`target_link_libraries` command:
......@@ -31,7 +31,7 @@ Dependencies between binary targets are expressed using the
add_executable(zipapp zipapp.cpp)
target_link_libraries(zipapp archive)
``archive`` is defined as a static library -- an archive containing objects
``archive`` is defined as a ``STATIC`` library -- an archive containing objects
compiled from ``archive.cpp``, ``zip.cpp``, and ``lzma.cpp``. ``zipapp``
is defined as an executable formed by compiling and linking ``zipapp.cpp``.
When linking the ``zipapp`` executable, the ``archive`` static library is
......@@ -59,7 +59,7 @@ Binary Library Types
Normal Libraries
^^^^^^^^^^^^^^^^
By default, the :command:`add_library` command defines a static library,
By default, the :command:`add_library` command defines a ``STATIC`` library,
unless a type is specified. A type may be specified when using the command:
.. code-block:: cmake
......@@ -141,8 +141,8 @@ Alternatively, object libraries may be linked into other targets:
target_link_libraries(test_exe archive)
The link (or archiving) step of those other targets will use the object
files from object libraries that are *directly* linked. Additionally,
usage requirements of the object libraries will be honored when compiling
files from ``OBJECT`` libraries that are *directly* linked. Additionally,
usage requirements of the ``OBJECT`` libraries will be honored when compiling
sources in those other targets. Furthermore, those usage requirements
will propagate transitively to dependents of those other targets.
......@@ -365,8 +365,8 @@ non-compatible requirements :manual:`cmake(1)` issues a diagnostic:
target_link_libraries(exe2 lib1 lib2)
The ``lib1`` requirement ``INTERFACE_POSITION_INDEPENDENT_CODE`` is not
"compatible" with the ``POSITION_INDEPENDENT_CODE`` property of the ``exe1``
target. The library requires that consumers are built as
"compatible" with the :prop_tgt:`POSITION_INDEPENDENT_CODE` property of
the ``exe1`` target. The library requires that consumers are built as
position-independent-code, while the executable specifies to not built as
position-independent-code, so a diagnostic is issued.
......@@ -547,10 +547,10 @@ is not known until build-time. Therefore, code such as
target_compile_definitions(exe1 PRIVATE DEBUG_BUILD)
endif()
may appear to work for ``Makefile`` based and ``Ninja`` generators, but is not
portable to IDE generators. Additionally, the :prop_tgt:`IMPORTED`
configuration-mappings are not accounted for with code like this, so it should
be avoided.
may appear to work for :ref:`Makefile Generators` and :generator:`Ninja`
generators, but is not portable to IDE generators. Additionally,
the :prop_tgt:`IMPORTED` configuration-mappings are not accounted for
with code like this, so it should be avoided.
The unary ``TARGET_PROPERTY`` generator expression and the ``TARGET_POLICY``
generator expression are evaluated with the consuming target context. This
......@@ -699,7 +699,7 @@ found in those directories. This behavior for :ref:`imported targets` may
be controlled by setting the :prop_tgt:`NO_SYSTEM_FROM_IMPORTED` target
property on the *consumers* of imported targets.
If a binary target is linked transitively to a Mac OX framework, the
If a binary target is linked transitively to a macOS :prop_tgt:`FRAMEWORK`, the
``Headers`` directory of the framework is also treated as a usage requirement.
This has the same effect as passing the framework directory as an include
directory.
......
......@@ -21,7 +21,7 @@ provided at the bottom of the window when the program is running.
CMake is a cross-platform build system generator. Projects specify
their build process with platform-independent CMake listfiles included
in each directory of a source tree with the name CMakeLists.txt.
in each directory of a source tree with the name ``CMakeLists.txt``.
Users build a project by using CMake to generate a build system for a
native tool on their platform.
......
......@@ -12,7 +12,7 @@ Introduction
Packages provide dependency information to CMake based buildsystems. Packages
are found with the :command:`find_package` command. The result of
using ``find_package`` is either a set of :prop_tgt:`IMPORTED` targets, or
using :command:`find_package` is either a set of :prop_tgt:`IMPORTED` targets, or
a set of variables corresponding to build-relevant information.
Using Packages
......
......@@ -26,13 +26,13 @@ built-in variables, such as
:variable:`CMAKE_CXX_COMPILER_ID <CMAKE_<LANG>_COMPILER_ID>` etc are set by
invoking the :command:`project` command. If no project command
is in the top-level CMakeLists file, one will be implicitly generated. By default
the enabled languages are C and CXX:
the enabled languages are ``C`` and ``CXX``:
.. code-block:: cmake
project(C_Only C)
A special value of NONE can also be used with the :command:`project` command
A special value of ``NONE`` can also be used with the :command:`project` command
to enable no languages:
.. code-block:: cmake
......@@ -468,10 +468,10 @@ The following variables will be computed and provided automatically:
The Android ABI detected from the standalone toolchain.
:variable:`CMAKE_<LANG>_ANDROID_TOOLCHAIN_PREFIX`
The absolute path prefix to the binutils in the standalone toolchain.
The absolute path prefix to the ``binutils`` in the standalone toolchain.
:variable:`CMAKE_<LANG>_ANDROID_TOOLCHAIN_SUFFIX`
The host platform suffix of the binutils in the standalone toolchain.
The host platform suffix of the ``binutils`` in the standalone toolchain.
For example, a toolchain file might contain:
......@@ -533,7 +533,7 @@ generator is recommended. The :generator:`Unix Makefiles` or
:generator:`Ninja` generators can also be used, but they require the
project to handle more areas like target CPU selection and code signing.
Any of the three systems can be targetted by setting the
Any of the three systems can be targeted by setting the
:variable:`CMAKE_SYSTEM_NAME` variable to a value from the table below.
By default, the latest Device SDK is chosen. As for all Apple platforms,
a different SDK (e.g. a simulator) can be selected by setting the
......@@ -609,7 +609,7 @@ Code Signing
Some build artifacts for the embedded Apple platforms require mandatory
code signing. If the :generator:`Xcode` generator is being used and
code signing is required or desired, the developmemt team ID can be
code signing is required or desired, the development team ID can be
specified via the ``CMAKE_XCODE_ATTRIBUTE_DEVELOPMENT_TEAM`` CMake variable.
This team ID will then be included in the generated Xcode project.
By default, CMake avoids the need for code signing during the internal
......
......@@ -7,7 +7,7 @@ cmake-variables(7)
.. contents::
This page documents variables that are provided by CMake
This page documents variables that are provided by CMake
or have meaning to CMake when set by project code.
For general information on variables, see the
......
......@@ -172,12 +172,12 @@ Options
``-L[A][H]``
List non-advanced cached variables.
List cache variables will run CMake and list all the variables from
the CMake cache that are not marked as INTERNAL or ADVANCED. This
will effectively display current CMake settings, which can then be
changed with -D option. Changing some of the variables may result
in more variables being created. If A is specified, then it will
display also advanced variables. If H is specified, it will also
List ``CACHE`` variables will run CMake and list all the variables from
the CMake ``CACHE`` that are not marked as ``INTERNAL`` or :prop_cache:`ADVANCED`.
This will effectively display current CMake settings, which can then be
changed with ``-D`` option. Changing some of the variables may result
in more variables being created. If ``A`` is specified, then it will
display also advanced variables. If ``H`` is specified, it will also
display help for each variable.
``-N``
......@@ -201,9 +201,10 @@ Options
additional information such as the cache, log files etc.
``--debug-trycompile``
Do not delete the try_compile build tree. Only useful on one try_compile at a time.
Do not delete the :command:`try_compile` build tree.
Only useful on one :command:`try_compile` at a time.
Do not delete the files and directories created for try_compile
Do not delete the files and directories created for :command:`try_compile`
calls. This is useful in debugging failed try_compiles. It may
however change the results of the try-compiles as old junk from a
previous try-compile may cause a different test to either pass or
......@@ -214,7 +215,7 @@ Options
Put cmake in a debug mode.
Print extra information during the cmake run like stack traces with
message(send_error ) calls.
:command:`message(SEND_ERROR)` calls.
``--trace``
Put cmake in trace mode.
......@@ -251,8 +252,8 @@ Options
Find problems with variable usage in system files.
Normally, unused and uninitialized variables are searched for only
in CMAKE_SOURCE_DIR and CMAKE_BINARY_DIR. This flag tells CMake to
warn about other files as well.
in :variable:`CMAKE_SOURCE_DIR` and :variable:`CMAKE_BINARY_DIR`.
This flag tells CMake to warn about other files as well.
.. _`Build Tool Mode`:
......@@ -329,10 +330,10 @@ The options are:
Component-based install. Only install component ``<comp>``.
``--prefix <prefix>``
The installation prefix CMAKE_INSTALL_PREFIX.
The installation prefix :variable:`CMAKE_INSTALL_PREFIX`.
``--strip``
Strip before installing by setting CMAKE_INSTALL_DO_STRIP.
Strip before installing by setting ``CMAKE_INSTALL_DO_STRIP``.
``-v, --verbose``
Enable verbose output.
......@@ -363,8 +364,8 @@ Run a Script
Process the given cmake file as a script written in the CMake
language. No configure or generate step is performed and the cache
is not modified. If variables are defined using -D, this must be
done before the -P argument.
is not modified. If variables are defined using ``-D``, this must be
done before the ``-P`` argument.
Run a Command-Line Tool
......@@ -421,7 +422,7 @@ Available commands are:
``compare_files [--ignore-eol] <file1> <file2>``
Check if ``<file1>`` is same as ``<file2>``. If files are the same,
then returns 0, if not it returns 1. The ``--ignore-eol`` option
then returns ``0``, if not it returns ``1``. The ``--ignore-eol`` option
implies line-wise comparison and ignores LF/CRLF differences.
``copy <file>... <destination>``
......
......@@ -63,7 +63,7 @@ Options
details. By default, ``CPackConfig.cmake`` in the current directory will
be used.
``--verbose,-V``
``--verbose, -V``
Run ``cpack`` with verbose output. This can be used to show more details
from the package generation tools and is suitable for project developers.
......
......@@ -22,8 +22,8 @@ Description
The **ctest** executable is the CMake test driver program.
CMake-generated build trees created for projects that use the
ENABLE_TESTING and ADD_TEST commands have testing support. This
program will run the tests and report results.
:command:`enable_testing` and :command:`add_test` commands have testing support.
This program will run the tests and report results.
Options
=======
......@@ -33,8 +33,8 @@ Options
Some CMake-generated build trees can have multiple build
configurations in the same tree. This option can be used to specify
which one should be tested. Example configurations are "Debug" and
"Release".
which one should be tested. Example configurations are ``Debug`` and
``Release``.
``--progress``
Enable short progress output from tests.
......@@ -108,7 +108,7 @@ Options
``-O <file>, --output-log <file>``
Output to log file.
This option tells CTest to write all its output to a log file.
This option tells CTest to write all its output to a ``<file>`` log file.
``-N,--show-only[=<format>]``
Disable actual execution of tests.
......@@ -172,9 +172,10 @@ Options
Execute dashboard test.
This option tells CTest to act as a CDash client and perform a
dashboard test. All tests are <Mode><Test>, where Mode can be
Experimental, Nightly, and Continuous, and Test can be Start,
Update, Configure, Build, Test, Coverage, and Submit.
dashboard test. All tests are ``<Mode><Test>``, where ``<Mode>`` can be
``Experimental``, ``Nightly``, and ``Continuous``, and ``<Test>`` can be
``Start``, ``Update``, ``Configure``, ``Build``, ``Test``,
``Coverage``, and ``Submit``.
See `Dashboard Client`_.
......@@ -229,10 +230,10 @@ Options
``-I [Start,End,Stride,test#,test#|Test file], --tests-information``
Run a specific number of tests by number.
This option causes CTest to run tests starting at number Start,
ending at number End, and incrementing by Stride. Any additional
numbers after Stride are considered individual test numbers. Start,
End,or stride can be empty. Optionally a file can be given that
This option causes CTest to run tests starting at number ``Start``,
ending at number ``End``, and incrementing by ``Stride``. Any additional
numbers after ``Stride`` are considered individual test numbers. ``Start``,
``End``, or ``Stride`` can be empty. Optionally a file can be given that
contains the same syntax as the command line.
``-U, --union``
......@@ -264,12 +265,12 @@ Options
name which can be very annoying.
``--interactive-debug-mode [0|1]``
Set the interactive mode to 0 or 1.
Set the interactive mode to ``0`` or ``1``.
This option causes CTest to run tests in either an interactive mode
or a non-interactive mode. On Windows this means that in
non-interactive mode, all system debug pop up windows are blocked.
In dashboard mode (Experimental, Nightly, Continuous), the default
In dashboard mode (``Experimental``, ``Nightly``, ``Continuous``), the default
is non-interactive. When just running tests not for a dashboard the
default is to allow popups and interactive debugging.
......@@ -350,7 +351,7 @@ See `Build and Test Mode`_.
Label and Subproject Summary
============================
CTest prints timing summary information for each label and subproject
CTest prints timing summary information for each ``LABEL`` and subproject
associated with the tests run. The label time summary will not include labels
that are mapped to subprojects.
......@@ -358,8 +359,8 @@ When the :prop_test:`PROCESSORS` test property is set, CTest will display a
weighted test timing result in label and subproject summaries. The time is
reported with `sec*proc` instead of just `sec`.
The weighted time summary reported for each label or subproject j is computed
as::
The weighted time summary reported for each label or subproject ``j``
is computed as::
Weighted Time Summary for Label/Subproject j =
sum(raw_test_time[j,i] * num_processors[j,i], i=1...num_tests[j])
......@@ -368,25 +369,25 @@ as::
where:
* raw_test_time[j,i]: Wall-clock time for the ith test for the jth label or
subproject
* num_processors[j,i]: Value of the CTest PROCESSORS property for the ith test
for the jth label or subproject
* num_tests[j]: Number of tests associated with the jth label or subproject
* total: Total number of labels or subprojects that have at least one test run
* ``raw_test_time[j,i]``: Wall-clock time for the ``i``th test
for the ``j``th label or subproject
* ``num_processors[j,i]``: Value of the CTest :prop_test:`PROCESSORS` property
for the ``i``th test for the ``j``th label or subproject
* ``num_tests[j]``: Number of tests associated with the ``j``th label or subproject
* ``total``: Total number of labels or subprojects that have at least one test run
Therefore, the weighted time summary for each label or subproject represents
the amount of time that CTest gave to run the tests for each label or
subproject and gives a good representation of the total expense of the tests
for each label or subproject when compared to other labels or subprojects.
For example, if "SubprojectA" showed "100 sec*proc" and "SubprojectB" showed
"10 sec*proc", then CTest allocated approximately 10 times the CPU/core time
to run the tests for "SubprojectA" than for "SubprojectB" (e.g. so if effort
For example, if ``SubprojectA`` showed ``100 sec*proc`` and ``SubprojectB`` showed
``10 sec*proc``, then CTest allocated approximately 10 times the CPU/core time
to run the tests for ``SubprojectA`` than for ``SubprojectB`` (e.g. so if effort
is going to be expended to reduce the cost of the test suite for the whole
project, then reducing the cost of the test suite for "SubprojectA" would
project, then reducing the cost of the test suite for ``SubprojectA`` would
likely have a larger impact than effort to reduce the cost of the test suite
for "SubprojectB").
for ``SubprojectB``).
.. _`Build and Test Mode`:
......@@ -449,7 +450,7 @@ this mode include:
``--build-config-sample``
A sample executable to use to determine the configuration that
should be used. e.g. Debug/Release/etc.
should be used. e.g. ``Debug``, ``Release`` etc.
``--build-options``
Additional options for configuring the build (i.e. for CMake, not for
......@@ -495,7 +496,7 @@ Options for Dashboard Client include:
dashboard.
``--tomorrow-tag``
Nightly or experimental starts with next day tag.
``Nightly`` or ``Experimental`` starts with next day tag.
This is useful if the build will not finish in one day.
......@@ -505,10 +506,10 @@ Options for Dashboard Client include:
This option will submit extra files to the dashboard.
``--http1.0``
Submit using HTTP 1.0.
Submit using `HTTP 1.0`.
This option will force CTest to use HTTP 1.0 to submit files to the
dashboard, instead of HTTP 1.1.
This option will force CTest to use `HTTP 1.0` to submit files to the
dashboard, instead of `HTTP 1.1`.
``--no-compress-output``
Do not compress test output when submitting.
......@@ -711,7 +712,7 @@ Configuration settings to specify the version control tool include:
The source tree is updated by ``git fetch`` followed by
``git reset --hard`` to the ``FETCH_HEAD``. The result is the same
as ``git pull`` except that any local moficiations are overwritten.
as ``git pull`` except that any local modifications are overwritten.
Use ``GITUpdateCustom`` to specify a different approach.
``GITInitSubmodules``
......
......@@ -3,8 +3,9 @@ VS_CSHARP_<tagname>
Visual Studio and CSharp source-file-specific configuration.
Tell the Visual Studio generator to set the source file tag