Document usage of the include(CTest) module

Previously this module gave only very brief documentation.  We extend
the module's documentation to describe CTestConfig.cmake, interaction
with dashboard scripts, and the CTEST_USE_LAUNCHERS option.
This commit is contained in:
Brad King 2009-12-04 13:44:19 -05:00
parent 0b38bb4c53
commit 700da5f266
1 changed files with 45 additions and 9 deletions

View File

@ -1,13 +1,49 @@
# - Configure a project for testing with CTest/CDash # - Configure a project for testing with CTest/CDash
# This file configures a project to use the CTest/CDash/Dart # Include this module in the top CMakeLists.txt file of a project to
# testing/dashboard process. This module should be included # enable testing with CTest and dashboard submissions to CDash:
# in the CMakeLists.txt file at the top of a project. Typical usage: # project(MyProject)
# INCLUDE(CTest) # ...
# IF(BUILD_TESTING) # include(CTest)
# # ... testing related CMake code ... # The module automatically creates a BUILD_TESTING option that selects
# ENDIF(BUILD_TESTING) # whether to enable testing support (ON by default). After including
# The BUILD_TESTING option is created by the CTest module to determine # the module, use code like
# whether testing support should be enabled. The default is ON. # 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).
#
# 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.)
#============================================================================= #=============================================================================
# Copyright 2005-2009 Kitware, Inc. # Copyright 2005-2009 Kitware, Inc.