summaryrefslogtreecommitdiff
path: root/share/cmake-3.6/Help/manual/ctest.1.rst
diff options
context:
space:
mode:
Diffstat (limited to 'share/cmake-3.6/Help/manual/ctest.1.rst')
-rw-r--r--share/cmake-3.6/Help/manual/ctest.1.rst1034
1 files changed, 0 insertions, 1034 deletions
diff --git a/share/cmake-3.6/Help/manual/ctest.1.rst b/share/cmake-3.6/Help/manual/ctest.1.rst
deleted file mode 100644
index e797333..0000000
--- a/share/cmake-3.6/Help/manual/ctest.1.rst
+++ /dev/null
@@ -1,1034 +0,0 @@
-.. cmake-manual-description: CTest Command-Line Reference
-
-ctest(1)
-********
-
-Synopsis
-========
-
-.. parsed-literal::
-
- ctest [<options>]
-
-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.
-
-Options
-=======
-
-``-C <cfg>, --build-config <cfg>``
- Choose configuration to test.
-
- 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".
-
-``-V,--verbose``
- Enable verbose output from tests.
-
- Test output is normally suppressed and only summary information is
- displayed. This option will show all test output.
-
-``-VV,--extra-verbose``
- Enable more verbose output from tests.
-
- Test output is normally suppressed and only summary information is
- displayed. This option will show even more test output.
-
-``--debug``
- Displaying more verbose internals of CTest.
-
- This feature will result in a large number of output that is mostly
- useful for debugging dashboard problems.
-
-``--output-on-failure``
- Output anything outputted by the test program if the test should fail.
- This option can also be enabled by setting the environment variable
- ``CTEST_OUTPUT_ON_FAILURE``.
-
-``-F``
- Enable failover.
-
- This option allows ctest to resume a test set execution that was
- previously interrupted. If no interruption occurred, the -F option
- will have no effect.
-
-``-j <jobs>, --parallel <jobs>``
- Run the tests in parallel using the given number of jobs.
-
- This option tells ctest to run the tests in parallel using given
- number of jobs. This option can also be set by setting the
- environment variable ``CTEST_PARALLEL_LEVEL``.
-
-``--test-load <level>``
- While running tests in parallel (e.g. with ``-j``), try not to start
- tests when they may cause the CPU load to pass above a given threshold.
-
- When ``ctest`` is run as a `Dashboard Client`_ this sets the
- ``TestLoad`` option of the `CTest Test Step`_.
-
-``-Q,--quiet``
- Make ctest quiet.
-
- This option will suppress all the output. The output log file will
- still be generated if the --output-log is specified. Options such
- as --verbose, --extra-verbose, and --debug are ignored if --quiet is
- specified.
-
-``-O <file>, --output-log <file>``
- Output to log file
-
- This option tells ctest to write all its output to a log file.
-
-``-N,--show-only``
- Disable actual execution of tests.
-
- This option tells ctest to list the tests that would be run but not
- actually run them. Useful in conjunction with the -R and -E
- options.
-
-``-L <regex>, --label-regex <regex>``
- Run tests with labels matching regular expression.
-
- This option tells ctest to run only the tests whose labels match the
- given regular expression.
-
-``-R <regex>, --tests-regex <regex>``
- Run tests matching regular expression.
-
- This option tells ctest to run only the tests whose names match the
- given regular expression.
-
-``-E <regex>, --exclude-regex <regex>``
- Exclude tests matching regular expression.
-
- This option tells ctest to NOT run the tests whose names match the
- given regular expression.
-
-``-LE <regex>, --label-exclude <regex>``
- Exclude tests with labels matching regular expression.
-
- This option tells ctest to NOT run the tests whose labels match the
- given regular expression.
-
-``-D <dashboard>, --dashboard <dashboard>``
- 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.
-
-``-D <var>:<type>=<value>``
- Define a variable for script mode
-
- Pass in variable values on the command line. Use in conjunction
- with -S to pass variable values to a dashboard script. Parsing -D
- arguments as variable values is only attempted if the value
- following -D does not match any of the known dashboard types.
-
-``-M <model>, --test-model <model>``
- Sets the model for a dashboard
-
- This option tells ctest to act as a CDash client where the TestModel
- can be Experimental, Nightly, and Continuous. Combining -M and -T
- is similar to -D
-
-``-T <action>, --test-action <action>``
- Sets the dashboard action to perform
-
- This option tells ctest to act as a CDash client and perform some
- action such as start, build, test etc. Combining -M and -T is
- similar to -D
-
-``--track <track>``
- Specify the track to submit dashboard to
-
- Submit dashboard to specified track instead of default one. By
- default, the dashboard is submitted to Nightly, Experimental, or
- Continuous track, but by specifying this option, the track can be
- arbitrary.
-
-``-S <script>, --script <script>``
- Execute a dashboard for a configuration
-
- This option tells ctest to load in a configuration script which sets
- a number of parameters such as the binary and source directories.
- Then ctest will do what is required to create and run a dashboard.
- This option basically sets up a dashboard and then runs ctest -D
- with the appropriate options.
-
-``-SP <script>, --script-new-process <script>``
- Execute a dashboard for a configuration
-
- This option does the same operations as -S but it will do them in a
- separate process. This is primarily useful in cases where the
- script may modify the environment and you do not want the modified
- environment to impact other -S scripts.
-
-``-A <file>, --add-notes <file>``
- Add a notes file with submission
-
- This option tells ctest to include a notes file when submitting
- dashboard.
-
-``-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
- contains the same syntax as the command line.
-
-``-U, --union``
- Take the Union of -I and -R
-
- When both -R and -I are specified by default the intersection of
- tests are run. By specifying -U the union of tests is run instead.
-
-``--rerun-failed``
- Run only the tests that failed previously
-
- This option tells ctest to perform only the tests that failed during
- its previous run. When this option is specified, ctest ignores all
- other options intended to modify the list of tests to run (-L, -R,
- -E, -LE, -I, etc). In the event that CTest runs and no tests fail,
- subsequent calls to ctest with the --rerun-failed option will run
- the set of tests that most recently failed (if any).
-
-``--repeat-until-fail <n>``
- Require each test to run ``<n>`` times without failing in order to pass.
-
- This is useful in finding sporadic failures in test cases.
-
-``--max-width <width>``
- Set the max width for a test name to output
-
- Set the maximum width for each test name to show in the output.
- This allows the user to widen the output to avoid clipping the test
- name which can be very annoying.
-
-``--interactive-debug-mode [0|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
- is non-interactive. When just running tests not for a dashboard the
- default is to allow popups and interactive debugging.
-
-``--no-label-summary``
- Disable timing summary information for labels.
-
- This option tells ctest not to print summary information for each
- label associated with the tests run. If there are no labels on the
- tests, nothing extra is printed.
-
-``--build-and-test``
- Configure, build and run a test.
-
- This option tells ctest to configure (i.e. run cmake on), build,
- and or execute a test. The configure and test steps are optional.
- The arguments to this command line are the source and binary
- directories. By default this will run CMake on the Source/Bin
- directories specified unless --build-nocmake is specified.
- The --build-generator option *must* be provided to use
- --build-and-test. If --test-command is specified then that will be
- run after the build is complete. Other options that affect this
- mode are --build-target --build-nocmake, --build-run-dir,
- --build-two-config, --build-exe-dir,
- --build-project,--build-noclean, --build-options
-
-``--build-target``
- Specify a specific target to build.
-
- This option goes with the --build-and-test option, if left out the
- all target is built.
-
-``--build-nocmake``
- Run the build without running cmake first.
-
- Skip the cmake step.
-
-``--build-run-dir``
- Specify directory to run programs from.
-
- Directory where programs will be after it has been compiled.
-
-``--build-two-config``
- Run CMake twice
-
-``--build-exe-dir``
- Specify the directory for the executable.
-
-``--build-generator``
- Specify the generator to use.
-
-``--build-generator-platform``
- Specify the generator-specific platform.
-
-``--build-generator-toolset``
- Specify the generator-specific toolset.
-
-``--build-project``
- Specify the name of the project to build.
-
-``--build-makeprogram``
- Override the make program chosen by CTest with a given one.
-
-``--build-noclean``
- Skip the make clean step.
-
-``--build-config-sample``
- A sample executable to use to determine the configuration
-
- A sample executable to use to determine the configuration that
- should be used. e.g. Debug/Release/etc
-
-``--build-options``
- Add extra options to the build step.
-
- This option must be the last option with the exception of
- --test-command
-
-``--test-command``
- The test to run with the --build-and-test option.
-
-``--test-output-size-passed <size>``
- Limit the output for passed tests to <size> bytes.
-
-``--test-output-size-failed <size>``
- Limit the output for failed tests to <size> bytes.
-
-``--test-timeout``
- The time limit in seconds, internal use only.
-
-``--tomorrow-tag``
- Nightly or experimental starts with next day tag.
-
- This is useful if the build will not finish in one day.
-
-``--ctest-config``
- The configuration file used to initialize CTest state when submitting dashboards.
-
- This option tells CTest to use different initialization file instead
- of CTestConfiguration.tcl. This way multiple initialization files
- can be used for example to submit to multiple dashboards.
-
-``--overwrite``
- Overwrite CTest configuration option.
-
- By default ctest uses configuration options from configuration file.
- This option will overwrite the configuration option.
-
-``--extra-submit <file>[;<file>]``
- Submit extra files to the dashboard.
-
- This option will submit extra files to the dashboard.
-
-``--force-new-ctest-process``
- Run child CTest instances as new processes
-
- By default CTest will run child CTest instances within the same
- process. If this behavior is not desired, this argument will
- enforce new processes for child CTest processes.
-
-``--schedule-random``
- Use a random order for scheduling tests
-
- This option will run the tests in a random order. It is commonly
- used to detect implicit dependencies in a test suite.
-
-``--submit-index``
- Legacy option for old Dart2 dashboard server feature.
- Do not use.
-
-``--timeout <seconds>``
- Set a global timeout on all tests.
-
- This option will set a global timeout on all tests that do not
- already have a timeout set on them.
-
-``--stop-time <time>``
- Set a time at which all tests should stop running.
-
- Set a real time of day at which all tests should timeout. Example:
- 7:00:00 -0400. Any time format understood by the curl date parser
- is accepted. Local time is assumed if no timezone is specified.
-
-``--http1.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.
-
-``--no-compress-output``
- Do not compress test output when submitting.
-
- This flag will turn off automatic compression of test output. Use
- this to maintain compatibility with an older version of CDash which
- doesn't support compressed test output.
-
-``--print-labels``
- Print all available test labels.
-
- This option will not run any tests, it will simply print the list of
- all labels associated with the test set.
-
-.. include:: OPTIONS_HELP.txt
-
-.. _`Dashboard Client`:
-
-Dashboard Client
-================
-
-CTest can operate as a client for the `CDash`_ software quality dashboard
-application. As a dashboard client, CTest performs a sequence of steps
-to configure, build, and test software, and then submits the results to
-a `CDash`_ server.
-
-.. _`CDash`: http://cdash.org/
-
-Dashboard Client Steps
-----------------------
-
-CTest defines an ordered list of testing steps of which some or all may
-be run as a dashboard client:
-
-``Start``
- Start a new dashboard submission to be composed of results recorded
- by the following steps.
- See the `CTest Start Step`_ section below.
-
-``Update``
- Update the source tree from its version control repository.
- Record the old and new versions and the list of updated source files.
- See the `CTest Update Step`_ section below.
-
-``Configure``
- Configure the software by running a command in the build tree.
- Record the configuration output log.
- See the `CTest Configure Step`_ section below.
-
-``Build``
- Build the software by running a command in the build tree.
- Record the build output log and detect warnings and errors.
- See the `CTest Build Step`_ section below.
-
-``Test``
- Test the software by loading a ``CTestTestfile.cmake``
- from the build tree and executing the defined tests.
- Record the output and result of each test.
- See the `CTest Test Step`_ section below.
-
-``Coverage``
- Compute coverage of the source code by running a coverage
- analysis tool and recording its output.
- See the `CTest Coverage Step`_ section below.
-
-``MemCheck``
- Run the software test suite through a memory check tool.
- Record the test output, results, and issues reported by the tool.
- See the `CTest MemCheck Step`_ section below.
-
-``Submit``
- Submit results recorded from other testing steps to the
- software quality dashboard server.
- See the `CTest Submit Step`_ section below.
-
-Dashboard Client Modes
-----------------------
-
-CTest defines three modes of operation as a dashboard client:
-
-``Nightly``
- This mode is intended to be invoked once per day, typically at night.
- It enables the ``Start``, ``Update``, ``Configure``, ``Build``, ``Test``,
- ``Coverage``, and ``Submit`` steps by default. Selected steps run even
- if the ``Update`` step reports no changes to the source tree.
-
-``Continuous``
- This mode is intended to be invoked repeatedly throughout the day.
- It enables the ``Start``, ``Update``, ``Configure``, ``Build``, ``Test``,
- ``Coverage``, and ``Submit`` steps by default, but exits after the
- ``Update`` step if it reports no changes to the source tree.
-
-``Experimental``
- This mode is intended to be invoked by a developer to test local changes.
- It enables the ``Start``, ``Configure``, ``Build``, ``Test``, ``Coverage``,
- and ``Submit`` steps by default.
-
-Dashboard Client via CTest Command-Line
----------------------------------------
-
-CTest can perform testing on an already-generated build tree.
-Run the ``ctest`` command with the current working directory set
-to the build tree and use one of these signatures::
-
- ctest -D <mode>[<step>]
- ctest -M <mode> [ -T <step> ]...
-
-The ``<mode>`` must be one of the above `Dashboard Client Modes`_,
-and each ``<step>`` must be one of the above `Dashboard Client Steps`_.
-
-CTest reads the `Dashboard Client Configuration`_ settings from
-a file in the build tree called either ``CTestConfiguration.ini``
-or ``DartConfiguration.tcl`` (the names are historical). The format
-of the file is::
-
- # Lines starting in '#' are comments.
- # Other non-blank lines are key-value pairs.
- <setting>: <value>
-
-where ``<setting>`` is the setting name and ``<value>`` is the
-setting value.
-
-In build trees generated by CMake, this configuration file is
-generated by the :module:`CTest` module if included by the project.
-The module uses variables to obtain a value for each setting
-as documented with the settings below.
-
-.. _`CTest Script`:
-
-Dashboard Client via CTest Script
----------------------------------
-
-CTest can perform testing driven by a :manual:`cmake-language(7)`
-script that creates and maintains the source and build tree as
-well as performing the testing steps. Run the ``ctest`` command
-with the current working directory set outside of any build tree
-and use one of these signatures::
-
- ctest -S <script>
- ctest -SP <script>
-
-The ``<script>`` file must call :ref:`CTest Commands` commands
-to run testing steps explicitly as documented below. The commands
-obtain `Dashboard Client Configuration`_ settings from their
-arguments or from variables set in the script.
-
-Dashboard Client Configuration
-==============================
-
-The `Dashboard Client Steps`_ may be configured by named
-settings as documented in the following sections.
-
-.. _`CTest Start Step`:
-
-CTest Start Step
-----------------
-
-Start a new dashboard submission to be composed of results recorded
-by the following steps.
-
-In a `CTest Script`_, the :command:`ctest_start` command runs this step.
-Arguments to the command may specify some of the step settings.
-The command first runs the command-line specified by the
-``CTEST_CHECKOUT_COMMAND`` variable, if set, to initialize the source
-directory.
-
-Configuration settings include:
-
-``BuildDirectory``
- The full path to the project build tree.
-
- * `CTest Script`_ variable: :variable:`CTEST_BINARY_DIRECTORY`
- * :module:`CTest` module variable: :variable:`PROJECT_BINARY_DIR`
-
-``SourceDirectory``
- The full path to the project source tree.
-
- * `CTest Script`_ variable: :variable:`CTEST_SOURCE_DIRECTORY`
- * :module:`CTest` module variable: :variable:`PROJECT_SOURCE_DIR`
-
-.. _`CTest Update Step`:
-
-CTest Update Step
------------------
-
-In a `CTest Script`_, the :command:`ctest_update` command runs this step.
-Arguments to the command may specify some of the step settings.
-
-Configuration settings to specify the version control tool include:
-
-``BZRCommand``
- ``bzr`` command-line tool to use if source tree is managed by Bazaar.
-
- * `CTest Script`_ variable: :variable:`CTEST_BZR_COMMAND`
- * :module:`CTest` module variable: none
-
-``BZRUpdateOptions``
- Command-line options to the ``BZRCommand`` when updating the source.
-
- * `CTest Script`_ variable: :variable:`CTEST_BZR_UPDATE_OPTIONS`
- * :module:`CTest` module variable: none
-
-``CVSCommand``
- ``cvs`` command-line tool to use if source tree is managed by CVS.
-
- * `CTest Script`_ variable: :variable:`CTEST_CVS_COMMAND`
- * :module:`CTest` module variable: ``CVSCOMMAND``
-
-``CVSUpdateOptions``
- Command-line options to the ``CVSCommand`` when updating the source.
-
- * `CTest Script`_ variable: :variable:`CTEST_CVS_UPDATE_OPTIONS`
- * :module:`CTest` module variable: ``CVS_UPDATE_OPTIONS``
-
-``GITCommand``
- ``git`` command-line tool to use if source tree is managed by Git.
-
- * `CTest Script`_ variable: :variable:`CTEST_GIT_COMMAND`
- * :module:`CTest` module variable: ``GITCOMMAND``
-
- 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.
- Use ``GITUpdateCustom`` to specify a different approach.
-
-``GITInitSubmodules``
- If set, CTest will update the repository's submodules before updating.
-
- * `CTest Script`_ variable: :variable:`CTEST_GIT_INIT_SUBMODULES`
- * :module:`CTest` module variable: ``CTEST_GIT_INIT_SUBMODULES``
-
-``GITUpdateCustom``
- Specify a custom command line (as a semicolon-separated list) to run
- in the source tree (Git work tree) to update it instead of running
- the ``GITCommand``.
-
- * `CTest Script`_ variable: :variable:`CTEST_GIT_UPDATE_CUSTOM`
- * :module:`CTest` module variable: ``CTEST_GIT_UPDATE_CUSTOM``
-
-``GITUpdateOptions``
- Command-line options to the ``GITCommand`` when updating the source.
-
- * `CTest Script`_ variable: :variable:`CTEST_GIT_UPDATE_OPTIONS`
- * :module:`CTest` module variable: ``GIT_UPDATE_OPTIONS``
-
-``HGCommand``
- ``hg`` command-line tool to use if source tree is managed by Mercurial.
-
- * `CTest Script`_ variable: :variable:`CTEST_HG_COMMAND`
- * :module:`CTest` module variable: none
-
-``HGUpdateOptions``
- Command-line options to the ``HGCommand`` when updating the source.
-
- * `CTest Script`_ variable: :variable:`CTEST_HG_UPDATE_OPTIONS`
- * :module:`CTest` module variable: none
-
-``P4Client``
- Value of the ``-c`` option to the ``P4Command``.
-
- * `CTest Script`_ variable: :variable:`CTEST_P4_CLIENT`
- * :module:`CTest` module variable: ``CTEST_P4_CLIENT``
-
-``P4Command``
- ``p4`` command-line tool to use if source tree is managed by Perforce.
-
- * `CTest Script`_ variable: :variable:`CTEST_P4_COMMAND`
- * :module:`CTest` module variable: ``P4COMMAND``
-
-``P4Options``
- Command-line options to the ``P4Command`` for all invocations.
-
- * `CTest Script`_ variable: :variable:`CTEST_P4_OPTIONS`
- * :module:`CTest` module variable: ``CTEST_P4_OPTIONS``
-
-``P4UpdateCustom``
- Specify a custom command line (as a semicolon-separated list) to run
- in the source tree (Perforce tree) to update it instead of running
- the ``P4Command``.
-
- * `CTest Script`_ variable: none
- * :module:`CTest` module variable: ``CTEST_P4_UPDATE_CUSTOM``
-
-``P4UpdateOptions``
- Command-line options to the ``P4Command`` when updating the source.
-
- * `CTest Script`_ variable: :variable:`CTEST_P4_UPDATE_OPTIONS`
- * :module:`CTest` module variable: ``CTEST_P4_UPDATE_OPTIONS``
-
-``SVNCommand``
- ``svn`` command-line tool to use if source tree is managed by Subversion.
-
- * `CTest Script`_ variable: :variable:`CTEST_SVN_COMMAND`
- * :module:`CTest` module variable: ``SVNCOMMAND``
-
-``SVNOptions``
- Command-line options to the ``SVNCommand`` for all invocations.
-
- * `CTest Script`_ variable: :variable:`CTEST_SVN_OPTIONS`
- * :module:`CTest` module variable: ``CTEST_SVN_OPTIONS``
-
-``SVNUpdateOptions``
- Command-line options to the ``SVNCommand`` when updating the source.
-
- * `CTest Script`_ variable: :variable:`CTEST_SVN_UPDATE_OPTIONS`
- * :module:`CTest` module variable: ``SVN_UPDATE_OPTIONS``
-
-``UpdateCommand``
- Specify the version-control command-line tool to use without
- detecting the VCS that manages the source tree.
-
- * `CTest Script`_ variable: :variable:`CTEST_UPDATE_COMMAND`
- * :module:`CTest` module variable: ``<VCS>COMMAND``
- when ``UPDATE_TYPE`` is ``<vcs>``, else ``UPDATE_COMMAND``
-
-``UpdateOptions``
- Command-line options to the ``UpdateCommand``.
-
- * `CTest Script`_ variable: :variable:`CTEST_UPDATE_OPTIONS`
- * :module:`CTest` module variable: ``<VCS>_UPDATE_OPTIONS``
- when ``UPDATE_TYPE`` is ``<vcs>``, else ``UPDATE_OPTIONS``
-
-``UpdateType``
- Specify the version-control system that manages the source
- tree if it cannot be detected automatically.
- The value may be ``bzr``, ``cvs``, ``git``, ``hg``,
- ``p4``, or ``svn``.
-
- * `CTest Script`_ variable: none, detected from source tree
- * :module:`CTest` module variable: ``UPDATE_TYPE`` if set,
- else ``CTEST_UPDATE_TYPE``
-
-``UpdateVersionOnly``
- Specify that you want the version control update command to only
- discover the current version that is checked out, and not to update
- to a different version.
-
- * `CTest Script`_ variable: :variable:`CTEST_UPDATE_VERSION_ONLY`
-
-
-
-Additional configuration settings include:
-
-``NightlyStartTime``
- In the ``Nightly`` dashboard mode, specify the "nightly start time".
- With centralized version control systems (``cvs`` and ``svn``),
- the ``Update`` step checks out the version of the software as of
- this time so that multiple clients choose a common version to test.
- This is not well-defined in distributed version-control systems so
- the setting is ignored.
-
- * `CTest Script`_ variable: :variable:`CTEST_NIGHTLY_START_TIME`
- * :module:`CTest` module variable: ``NIGHTLY_START_TIME`` if set,
- else ``CTEST_NIGHTLY_START_TIME``
-
-.. _`CTest Configure Step`:
-
-CTest Configure Step
---------------------
-
-In a `CTest Script`_, the :command:`ctest_configure` command runs this step.
-Arguments to the command may specify some of the step settings.
-
-Configuration settings include:
-
-``ConfigureCommand``
- Command-line to launch the software configuration process.
- It will be executed in the location specified by the
- ``BuildDirectory`` setting.
-
- * `CTest Script`_ variable: :variable:`CTEST_CONFIGURE_COMMAND`
- * :module:`CTest` module variable: :variable:`CMAKE_COMMAND`
- followed by :variable:`PROJECT_SOURCE_DIR`
-
-.. _`CTest Build Step`:
-
-CTest Build Step
-----------------
-
-In a `CTest Script`_, the :command:`ctest_build` command runs this step.
-Arguments to the command may specify some of the step settings.
-
-Configuration settings include:
-
-``DefaultCTestConfigurationType``
- When the build system to be launched allows build-time selection
- of the configuration (e.g. ``Debug``, ``Release``), this specifies
- the default configuration to be built when no ``-C`` option is
- given to the ``ctest`` command. The value will be substituted into
- the value of ``MakeCommand`` to replace the literal string
- ``${CTEST_CONFIGURATION_TYPE}`` if it appears.
-
- * `CTest Script`_ variable: :variable:`CTEST_CONFIGURATION_TYPE`
- * :module:`CTest` module variable: ``DEFAULT_CTEST_CONFIGURATION_TYPE``,
- initialized by the ``CMAKE_CONFIG_TYPE`` environment variable
-
-``MakeCommand``
- Command-line to launch the software build process.
- It will be executed in the location specified by the
- ``BuildDirectory`` setting.
-
- * `CTest Script`_ variable: :variable:`CTEST_BUILD_COMMAND`
- * :module:`CTest` module variable: ``MAKECOMMAND``,
- initialized by the :command:`build_command` command
-
-``UseLaunchers``
- For build trees generated by CMake using one of the
- :ref:`Makefile Generators` or the :generator:`Ninja`
- generator, specify whether the
- ``CTEST_USE_LAUNCHERS`` feature is enabled by the
- :module:`CTestUseLaunchers` module (also included by the
- :module:`CTest` module). When enabled, the generated build
- system wraps each invocation of the compiler, linker, or
- custom command line with a "launcher" that communicates
- with CTest via environment variables and files to report
- granular build warning and error information. Otherwise,
- CTest must "scrape" the build output log for diagnostics.
-
- * `CTest Script`_ variable: :variable:`CTEST_USE_LAUNCHERS`
- * :module:`CTest` module variable: ``CTEST_USE_LAUNCHERS``
-
-.. _`CTest Test Step`:
-
-CTest Test Step
----------------
-
-In a `CTest Script`_, the :command:`ctest_test` command runs this step.
-Arguments to the command may specify some of the step settings.
-
-Configuration settings include:
-
-``TestLoad``
- While running tests in parallel (e.g. with ``-j``), try not to start
- tests when they may cause the CPU load to pass above a given threshold.
-
- * `CTest Script`_ variable: :variable:`CTEST_TEST_LOAD`
- * :module:`CTest` module variable: ``CTEST_TEST_LOAD``
-
-``TimeOut``
- The default timeout for each test if not specified by the
- :prop_test:`TIMEOUT` test property.
-
- * `CTest Script`_ variable: :variable:`CTEST_TEST_TIMEOUT`
- * :module:`CTest` module variable: ``DART_TESTING_TIMEOUT``
-
-.. _`CTest Coverage Step`:
-
-CTest Coverage Step
--------------------
-
-In a `CTest Script`_, the :command:`ctest_coverage` command runs this step.
-Arguments to the command may specify some of the step settings.
-
-Configuration settings include:
-
-``CoverageCommand``
- Command-line tool to perform software coverage analysis.
- It will be executed in the location specified by the
- ``BuildDirectory`` setting.
-
- * `CTest Script`_ variable: :variable:`CTEST_COVERAGE_COMMAND`
- * :module:`CTest` module variable: ``COVERAGE_COMMAND``
-
-``CoverageExtraFlags``
- Specify command-line options to the ``CoverageCommand`` tool.
-
- * `CTest Script`_ variable: :variable:`CTEST_COVERAGE_EXTRA_FLAGS`
- * :module:`CTest` module variable: ``COVERAGE_EXTRA_FLAGS``
-
-.. _`CTest MemCheck Step`:
-
-CTest MemCheck Step
--------------------
-
-In a `CTest Script`_, the :command:`ctest_memcheck` command runs this step.
-Arguments to the command may specify some of the step settings.
-
-Configuration settings include:
-
-``MemoryCheckCommand``
- Command-line tool to perform dynamic analysis. Test command lines
- will be launched through this tool.
-
- * `CTest Script`_ variable: :variable:`CTEST_MEMORYCHECK_COMMAND`
- * :module:`CTest` module variable: ``MEMORYCHECK_COMMAND``
-
-``MemoryCheckCommandOptions``
- Specify command-line options to the ``MemoryCheckCommand`` tool.
- They will be placed prior to the test command line.
-
- * `CTest Script`_ variable: :variable:`CTEST_MEMORYCHECK_COMMAND_OPTIONS`
- * :module:`CTest` module variable: ``MEMORYCHECK_COMMAND_OPTIONS``
-
-``MemoryCheckType``
- Specify the type of memory checking to perform.
-
- * `CTest Script`_ variable: :variable:`CTEST_MEMORYCHECK_TYPE`
- * :module:`CTest` module variable: ``MEMORYCHECK_TYPE``
-
-``MemoryCheckSanitizerOptions``
- Specify options to sanitizers when running with a sanitize-enabled build.
-
- * `CTest Script`_ variable: :variable:`CTEST_MEMORYCHECK_SANITIZER_OPTIONS`
- * :module:`CTest` module variable: ``MEMORYCHECK_SANITIZER_OPTIONS``
-
-``MemoryCheckSuppressionFile``
- Specify a file containing suppression rules for the
- ``MemoryCheckCommand`` tool. It will be passed with options
- appropriate to the tool.
-
- * `CTest Script`_ variable: :variable:`CTEST_MEMORYCHECK_SUPPRESSIONS_FILE`
- * :module:`CTest` module variable: ``MEMORYCHECK_SUPPRESSIONS_FILE``
-
-Additional configuration settings include:
-
-``BoundsCheckerCommand``
- Specify a ``MemoryCheckCommand`` that is known to be command-line
- compatible with Bounds Checker.
-
- * `CTest Script`_ variable: none
- * :module:`CTest` module variable: none
-
-``PurifyCommand``
- Specify a ``MemoryCheckCommand`` that is known to be command-line
- compatible with Purify.
-
- * `CTest Script`_ variable: none
- * :module:`CTest` module variable: ``PURIFYCOMMAND``
-
-``ValgrindCommand``
- Specify a ``MemoryCheckCommand`` that is known to be command-line
- compatible with Valgrind.
-
- * `CTest Script`_ variable: none
- * :module:`CTest` module variable: ``VALGRIND_COMMAND``
-
-``ValgrindCommandOptions``
- Specify command-line options to the ``ValgrindCommand`` tool.
- They will be placed prior to the test command line.
-
- * `CTest Script`_ variable: none
- * :module:`CTest` module variable: ``VALGRIND_COMMAND_OPTIONS``
-
-.. _`CTest Submit Step`:
-
-CTest Submit Step
------------------
-
-In a `CTest Script`_, the :command:`ctest_submit` command runs this step.
-Arguments to the command may specify some of the step settings.
-
-Configuration settings include:
-
-``BuildName``
- Describe the dashboard client platform with a short string.
- (Operating system, compiler, etc.)
-
- * `CTest Script`_ variable: :variable:`CTEST_BUILD_NAME`
- * :module:`CTest` module variable: ``BUILDNAME``
-
-``CDashVersion``
- Specify the version of `CDash`_ on the server.
-
- * `CTest Script`_ variable: none, detected from server
- * :module:`CTest` module variable: ``CTEST_CDASH_VERSION``
-
-``CTestSubmitRetryCount``
- Specify a number of attempts to retry submission on network failure.
-
- * `CTest Script`_ variable: none,
- use the :command:`ctest_submit` ``RETRY_COUNT`` option.
- * :module:`CTest` module variable: ``CTEST_SUBMIT_RETRY_COUNT``
-
-``CTestSubmitRetryDelay``
- Specify a delay before retrying submission on network failure.
-
- * `CTest Script`_ variable: none,
- use the :command:`ctest_submit` ``RETRY_DELAY`` option.
- * :module:`CTest` module variable: ``CTEST_SUBMIT_RETRY_DELAY``
-
-``CurlOptions``
- Specify a semicolon-separated list of options to control the
- Curl library that CTest uses internally to connect to the
- server. Possible options are ``CURLOPT_SSL_VERIFYPEER_OFF``
- and ``CURLOPT_SSL_VERIFYHOST_OFF``.
-
- * `CTest Script`_ variable: :variable:`CTEST_CURL_OPTIONS`
- * :module:`CTest` module variable: ``CTEST_CURL_OPTIONS``
-
-``DropLocation``
- The path on the dashboard server to send the submission.
-
- * `CTest Script`_ variable: :variable:`CTEST_DROP_LOCATION`
- * :module:`CTest` module variable: ``DROP_LOCATION`` if set,
- else ``CTEST_DROP_LOCATION``
-
-``DropMethod``
- Specify the method by which results should be submitted to the
- dashboard server. The value may be ``cp``, ``ftp``, ``http``,
- ``https``, ``scp``, or ``xmlrpc`` (if CMake was built with
- support for it).
-
- * `CTest Script`_ variable: :variable:`CTEST_DROP_METHOD`
- * :module:`CTest` module variable: ``DROP_METHOD`` if set,
- else ``CTEST_DROP_METHOD``
-
-``DropSite``
- The dashboard server name
- (for ``ftp``, ``http``, and ``https``, ``scp``, and ``xmlrpc``).
-
- * `CTest Script`_ variable: :variable:`CTEST_DROP_SITE`
- * :module:`CTest` module variable: ``DROP_SITE`` if set,
- else ``CTEST_DROP_SITE``
-
-``DropSitePassword``
- The dashboard server login password, if any
- (for ``ftp``, ``http``, and ``https``).
-
- * `CTest Script`_ variable: :variable:`CTEST_DROP_SITE_PASSWORD`
- * :module:`CTest` module variable: ``DROP_SITE_PASSWORD`` if set,
- else ``CTEST_DROP_SITE_PASWORD``
-
-``DropSiteUser``
- The dashboard server login user name, if any
- (for ``ftp``, ``http``, and ``https``).
-
- * `CTest Script`_ variable: :variable:`CTEST_DROP_SITE_USER`
- * :module:`CTest` module variable: ``DROP_SITE_USER`` if set,
- else ``CTEST_DROP_SITE_USER``
-
-``IsCDash``
- Specify whether the dashboard server is `CDash`_ or an older
- dashboard server implementation requiring ``TriggerSite``.
-
- * `CTest Script`_ variable: :variable:`CTEST_DROP_SITE_CDASH`
- * :module:`CTest` module variable: ``CTEST_DROP_SITE_CDASH``
-
-``ScpCommand``
- ``scp`` command-line tool to use when ``DropMethod`` is ``scp``.
-
- * `CTest Script`_ variable: :variable:`CTEST_SCP_COMMAND`
- * :module:`CTest` module variable: ``SCPCOMMAND``
-
-``Site``
- Describe the dashboard client host site with a short string.
- (Hostname, domain, etc.)
-
- * `CTest Script`_ variable: :variable:`CTEST_SITE`
- * :module:`CTest` module variable: ``SITE``,
- initialized by the :command:`site_name` command
-
-``TriggerSite``
- Legacy option to support older dashboard server implementations.
- Not used when ``IsCDash`` is true.
-
- * `CTest Script`_ variable: :variable:`CTEST_TRIGGER_SITE`
- * :module:`CTest` module variable: ``TRIGGER_SITE`` if set,
- else ``CTEST_TRIGGER_SITE``
-
-See Also
-========
-
-.. include:: LINKS.txt