CMake/Tests/RunCMake
Brad King eb705b9531 Update links to gitlab.kitware.com repos to add -/
GitLab now uses a `/-/` component between the `group/project` part of
the URL and the `{issues,merge_requests,tree}` part so that it can
support `group/subgroup/project` with arbitrary depth.
2020-05-26 11:38:01 -04:00
..
add_custom_command add_custom_command: Format files in error message in a single line 2019-09-23 23:39:07 +02:00
add_custom_target add_custom_command: Format files in error message in a single line 2019-09-23 23:39:07 +02:00
add_dependencies
add_executable cmake: Display error if generate step fails 2019-05-13 10:31:39 -04:00
add_library target_*: Allow setting INTERFACE properties of UNKNOWN IMPORTED targets 2019-07-22 10:23:39 -04:00
add_link_options Genex: Add $<LINK_LANGUAGE:...> and $<LINK_LANG_AND_ID:...> 2020-02-26 16:38:42 +01:00
add_subdirectory Tests: Cover EXCLUDE_FROM_ALL OFF on sub/sub/tgt in sub/all 2019-09-30 10:34:23 -04:00
add_test add_test: Allow special characters in test name 2020-05-17 10:53:14 +02:00
alias_targets add_library: Restore error on alias of non-global imported target 2018-05-10 09:57:31 -04:00
Android Android: Use unified toolchain in NDK r19+ 2019-07-26 14:17:07 -04:00
AndroidMK LINK_OPTIONS: Add new family of properties 2018-06-06 17:22:39 +02:00
AndroidTestUtilities add_test: Allow special characters in test name 2020-05-17 10:53:14 +02:00
AutoExportDll bindexplib: Do not export symbols from managed code 2020-05-04 09:58:09 +02:00
Autogen Tests: add cases for providing Qt5Core_VERSION manually 2019-01-30 11:30:18 -05:00
build_command Add deprecation warnings for policies CMP0063 and below 2018-09-17 14:16:48 -04:00
BuildDepends Merge topic 'fix-cache-args-file-to-dep-list' 2020-05-13 12:12:28 -04:00
BundleUtilities Merge branch 'master' into deployqt4-cmp0080-fix 2018-10-19 10:00:29 -04:00
Byproducts Ninja,Makefile: Add tests for handling of byproducts by clean operations 2018-09-28 11:30:32 -04:00
CacheNewline cmCacheManager: Test and document newline truncation behavior 2018-01-15 09:28:32 -05:00
CheckIPOSupported Add deprecation warnings for policies CMP0069 and below 2019-10-10 09:26:10 -04:00
CheckLinkerFlag CheckLinkerFlag: Add module to check validity of linker flags 2020-05-25 10:57:14 -04:00
CheckModules CheckIncludeFiles: Honor CMAKE_REQUIRED_LIBRARIES 2018-04-18 08:09:56 -04:00
ClangTidy
cmake_language cmake_language: Rename command from cmake_command 2020-05-21 13:36:52 -04:00
cmake_minimum_required cmake_minimum_required: Tolerate unknown future arguments 2018-03-26 11:31:08 -04:00
cmake_parse_arguments cmake_parse_arguments: add KEYWORDS_MISSING_VALUES 2019-02-07 12:59:10 -05:00
CMakeRoleGlobalProperty CMAKE_ROLE: Fix value in --build for Visual Studio generators 2019-02-26 14:52:17 -05:00
CMP0004
CMP0019
CMP0022
CMP0026 Testing: Update hard-coded line numbers to [0-9]+ in some tests 2018-10-10 10:06:27 -04:00
CMP0027
CMP0028
CMP0037 Tests: Fix RunCMake.CMP0037 test with Ninja 1.10 2020-01-27 13:26:40 -05:00
CMP0038
CMP0039
CMP0040
CMP0041
CMP0042
CMP0043
CMP0045
CMP0046
CMP0049
CMP0050
CMP0051 Testing: Update hard-coded line numbers to [0-9]+ in some tests 2018-10-10 10:06:27 -04:00
CMP0053
CMP0054
CMP0055 Add deprecation warnings for policies CMP0063 and below 2018-09-17 14:16:48 -04:00
CMP0057
CMP0059
CMP0060 Add deprecation warnings for policies CMP0063 and below 2018-09-17 14:16:48 -04:00
CMP0064 Add deprecation warnings for policies CMP0065 and below 2019-01-11 14:47:20 -05:00
CMP0065 AIX: Explicitly compute executable exports for both XL and GNU 2019-07-15 13:27:16 -04:00
CMP0068 Add deprecation warnings for policies CMP0069 and below 2019-10-10 09:26:10 -04:00
CMP0069 Add deprecation warnings for policies CMP0069 and below 2019-10-10 09:26:10 -04:00
CMP0081 LINK_DIRECTORIES target property: add policy for absolute paths check. 2018-09-25 23:59:59 +10:00
CMP0102 cmMarkAsAdvancedCommand: ignore variables which don't exist in the cache 2020-01-20 15:49:29 -05:00
CMP0104 Tests: Update CUDA tests to work with Clang 2020-05-15 18:12:39 +03:00
CMP0106 Modules/Documentation: remove 2020-04-22 10:46:03 -04:00
CommandLine Merge topic 'fileApiAddPrecompileHeadersBacktrace' 2020-05-25 10:40:56 -04:00
CommandLineTar Merge topic 'tar-zstd-compression' 2019-05-30 09:39:35 -04:00
CompatibleInterface
CompileDefinitions
CompileFeatures
CompilerChange
CompilerLauncher CUDA: Add CUDA_ARCHITECTURES target property 2020-04-15 17:55:41 +03:00
CompilerNotFound
Configure Generator: Don't allow Ninja Multi-Config variables on other generators 2020-02-27 09:23:08 -05:00
configure_file Makefiles: Re-run CMake if file configured in subdirectory is missing 2020-02-14 08:50:15 -05:00
continue
CPack cmCPackArchiveGenerator: support multithreaded compression 2020-04-03 07:35:35 -04:00
CPackCommandLine Tests: Add RunCMake.CPackCommandLine case for multi-config package 2019-11-11 14:16:48 -05:00
CPackConfig CPack: Restore support for 0-valued version components 2018-07-27 10:01:29 -04:00
CPackInstallProperties
CPackSymlinks
Cppcheck Fail the build if cppcheck returns a non-zero exit code 2018-10-11 07:56:05 -04:00
Cpplint
CrosscompilingEmulator add_test: Allow special characters in test name 2020-05-17 10:53:14 +02:00
CSharpCustomCommand CSharp: Fix regression in VS project type selection for custom target 2018-10-31 09:13:19 -04:00
CSharpReferenceImport Revise C++ coding style using clang-format-6.0 2018-06-01 09:53:42 -04:00
CTest Add CMAKE_CTEST_ARGUMENTS variable to pass command-line arguments to ctest 2020-01-15 15:02:56 -05:00
ctest_build ctest_build: ignore ANSI color 2019-08-22 15:53:42 -04:00
ctest_cmake_error Remove unnecessary CTEST_PROJECT_NAME variables 2018-11-20 21:43:27 +01:00
ctest_configure Remove unnecessary CTEST_PROJECT_NAME variables 2018-11-20 21:43:27 +01:00
ctest_coverage Remove unnecessary CTEST_PROJECT_NAME variables 2018-11-20 21:43:27 +01:00
ctest_disabled_test Remove unnecessary CTEST_PROJECT_NAME variables 2018-11-20 21:43:27 +01:00
ctest_fixtures Remove unnecessary CTEST_PROJECT_NAME variables 2018-11-20 21:43:27 +01:00
ctest_labels_for_subprojects Ninja: Add multi-config variant 2019-12-13 10:51:46 -05:00
ctest_memcheck Tests: Fix RunCMake.ctest_memcheck test script syntax errors 2020-04-16 10:08:58 -04:00
ctest_skipped_test Remove unnecessary CTEST_PROJECT_NAME variables 2018-11-20 21:43:27 +01:00
ctest_start Tests: Add tests to demonstrate when CTEST_NIGHTLY_START_TIME is needed 2020-04-29 15:36:12 -04:00
ctest_submit ctest_submit: Add option BUILD_ID 2019-03-22 09:37:08 -04:00
ctest_test CTest: Log environment variables as a test measurement 2020-05-19 10:26:57 -04:00
ctest_update Tests: Fix RunCMake.ctest_update test to not require GIT_EXECUTABLE 2019-06-04 12:27:32 -04:00
ctest_upload Remove unnecessary CTEST_PROJECT_NAME variables 2018-11-20 21:43:27 +01:00
CTestCommandExpandLists add_test: Add COMMAND_EXPAND_LISTS option 2019-06-07 13:14:29 -04:00
CTestCommandLine Merge topic 'ctest_stop_on_failure_16628' 2020-04-22 08:38:33 -04:00
CTestResourceAllocation CTest: Log environment variables as a test measurement 2020-05-19 10:26:57 -04:00
CTestTimeout CTest: Fix reported duration on timeout when grindchild keeps pipes open 2020-03-26 14:35:54 -04:00
CTestTimeoutAfterMatch Remove unnecessary CTEST_PROJECT_NAME variables 2018-11-20 21:43:27 +01:00
DisallowedCommands
execute_process execute_process: Add ECHO_(OUTPUT|ERROR)_VARIABLE options 2020-02-24 14:44:14 +01:00
export Tests/RunCMake/export: handle collapsed newlines 2020-05-22 11:34:14 -04:00
ExportCompileCommands Initialize CMAKE_EXPORT_COMPILE_COMMANDS only if not set already 2020-05-12 08:08:20 -04:00
ExportWithoutLanguage
ExternalData Testing: Update hard-coded line numbers to [0-9]+ in some tests 2018-10-10 10:06:27 -04:00
ExternalProject ExternalProject: Preserve empty string arguments 2020-05-23 23:41:53 +10:00
FeatureSummary
FetchContent FetchContent: Preserve empty string arguments 2020-05-23 23:42:43 +10:00
file file(UPLOAD): Add support for TLS_VERIFY and TLS_CAINFO 2020-04-08 15:15:49 +01:00
File_Archive file: Add ARCHIVE_{CREATE|EXTRACT} subcommands 2020-03-16 14:33:27 +01:00
File_Configure file: Add CONFIGURE subcommand 2020-03-09 11:54:02 -04:00
File_Generate Add deprecation warnings for policies CMP0071 and below 2020-02-17 11:44:57 -05:00
FileAPI fileapi: Extend codemodel targets with PRECOMPILE_HEADERS 2020-05-22 11:26:55 -04:00
FileAPIExternalSource fileapi: add some source property backtraces 2019-09-26 10:56:52 -04:00
find_dependency
find_file find_*: Add support for REQUIRED keyword 2020-03-06 16:40:26 +01:00
find_library find_*: Add support for REQUIRED keyword 2020-03-06 16:40:26 +01:00
find_package find_package: Improve debug logging output 2020-01-01 15:00:42 -05:00
find_path find_*: Add support for REQUIRED keyword 2020-03-06 16:40:26 +01:00
find_program find_program: Find programs that are executable but not readable 2020-04-09 08:08:50 -04:00
FindBoost Merge topic 'FindBoost-1.71' 2019-09-03 09:23:48 -04:00
FindGTK2
FindLua FindLua: Add tests for this module 2018-05-24 11:19:40 -04:00
FindMatlab FindMatlab: Matlab Runtime Compiler support 2018-04-23 10:30:49 -04:00
FindOpenGL
FindPkgConfig FindPkgConfig: also handle "-isystem" prefixes for include directories 2020-05-05 18:38:50 +02:00
FindSWIG FindSWIG: Add COMPONENTS support for SWIG target languages 2020-02-26 10:12:30 -05:00
foreach foreach: Set fatal error on invalid range 2020-02-27 14:52:06 -05:00
FPHSA FPHSA: REQUIRED_VARS is optional if HANDLE_COMPONENTS is specified 2020-04-30 10:54:36 +02:00
Framework Add support for FRAMEWORK_MULTI_CONFIG_POSTFIX_<CONFIG> 2020-03-04 14:30:54 +01:00
function cmFunctionCommand: Introduce CMAKE_CURRENT_FUNCTION* variables 2019-12-10 16:43:27 +02:00
GenerateExportHeader Tests: Update test suite to run in an Anaconda environment 2020-05-21 11:31:23 -04:00
GeneratorExpression Genex: Add generator expressions $<DEVICE_LINK> and $<HOST_LINK> 2020-04-19 15:04:54 +02:00
GeneratorInstance
GeneratorPlatform VS: Provide the default platform name to project code 2019-04-19 07:46:13 -04:00
GeneratorToolset VS: Add support to override VCTargetsPath through toolset 2019-10-15 13:28:45 -04:00
get_filename_component Tests: Fix get_filename_component PROGRAM test to use an executable 2020-04-07 10:30:53 -04:00
get_property set_source_files_properties: Allow specification of directory scope 2020-05-14 16:31:22 +02:00
GetPrerequisites GetPrerequisites: Fix handling of executable scripts 2019-01-05 09:09:39 +11:00
GNUInstallDirs GNUInstallDirs: Warn when CMAKE_SYSTEM_NAME is not set 2020-01-30 09:14:47 -05:00
GoogleTest GoogleTestAddTests: Fix output processing 2020-05-05 07:23:17 +00:00
Graphviz Update links to gitlab.kitware.com repos to add -/ 2020-05-26 11:38:01 -04:00
if
IfacePaths Tests: Shorten name RunCMake.IfacePaths_{INCLUDE_DIRECTORIES => INCDIRS} 2019-10-01 10:53:39 -04:00
include
include_directories
include_external_msproject VS: Add support for .NET Standard and .NET Core 2020-01-24 09:11:05 -05:00
include_guard Testing: Update hard-coded line numbers to [0-9]+ in some tests 2018-10-10 10:06:27 -04:00
IncludeWhatYouUse
IncompatibleQt
install Tests: Update test suite to run in an Anaconda environment 2020-05-21 11:31:23 -04:00
INSTALL_NAME_DIR Tests: Add tests for INSTALL_NAME_DIR 2019-11-04 19:02:16 -05:00
interface_library INTERFACE Target: allow (PUBLIC/PRIVATE)_HEADER properties 2019-04-11 11:09:42 -04:00
Languages Genex: Add $<LINK_LANGUAGE:...> and $<LINK_LANG_AND_ID:...> 2020-02-26 16:38:42 +01:00
LinkStatic static library: add property STATIC_LIBRARY_OPTIONS 2018-08-15 15:20:18 +02:00
LinkWhatYouUse
list list(POP_FRONT): Fix always assigning first item to output vars 2019-06-30 13:15:29 +03:00
load_cache load_cache: Allow READ_WITH_PREFIX mode in cmake scripts 2019-11-19 14:39:00 -05:00
MacOSVersions macOS: Rename OSX_*_VERSION properties to MACHO_*_VERSION 2020-03-12 21:15:40 +11:00
Make Tests: fix RunCMake.Make test when run on systems with non-english locale 2020-02-26 07:41:07 -05:00
math math(EXPR): Implement ~(exp_NOT) expression as documented 2019-07-23 07:33:50 -04:00
MaxRecursionDepth Refactor: Modernize cmVariableWatchCommand a little 2019-10-17 09:38:31 -04:00
message Update links to gitlab.kitware.com repos to add -/ 2020-05-26 11:38:01 -04:00
MetaCompileFeatures Add a test to verify meta-feature parity with granular features 2019-04-09 08:44:56 -04:00
MSVCRuntimeLibrary cmake: Display error if generate step fails 2019-05-13 10:31:39 -04:00
MSVCWarningFlags MSVC: Do not add /W3 to CMAKE_<LANG>_FLAGS by default 2019-04-19 12:56:49 -04:00
MultiLint
Ninja Merge branch 'master' into ninja-order-only-fix 2020-04-23 12:47:22 -04:00
NinjaMultiConfig Merge topic 'ninja-multi-install' 2020-05-25 10:33:26 -04:00
no_install_prefix
ObjectLibrary Tests: Fix -Wstrict-prototypes warnings in some C sources 2020-05-13 08:11:59 -04:00
ObsoleteQtMacros
option option: No CMP077 warnings when both cache and local variable exists 2018-07-10 13:56:15 -04:00
ParseImplicitData replace remove and remove_directory with rm in tests 2019-11-13 18:02:18 -05:00
ParseImplicitIncludeInfo CMakeParseImplicitLinkInfo supports comma separated link lines 2019-08-28 10:39:53 -04:00
ParseImplicitLinkInfo CMakeParseImplicitLinkInfo supports comma separated link lines 2019-08-28 10:39:53 -04:00
PolicyScope Genex: CompilerId now can match against a list of ids. 2019-06-03 10:20:23 -04:00
PositionIndependentCode PIE link options: Update strategy to fix performance regression 2018-12-19 19:41:27 +11:00
PrecompileHeaders Tests: Fix -Wstrict-prototypes warnings in some C sources 2020-05-13 08:11:59 -04:00
project project: Fix potential buffer write-past-end for version components 2019-10-26 17:50:24 +11:00
project_injected cmMakefile: Enforce explicit use of project() command 2019-05-06 10:58:10 +02:00
return
RuntimePath Ninja: Add multi-config variant 2019-12-13 10:51:46 -05:00
ScriptMode set_directory_properties: Restore in script mode 2018-10-29 11:37:32 -04:00
separate_arguments
set set: warn of extra arguments after ENV value. 2019-02-01 06:10:34 -05:00
set_property set_source_files_properties: Allow specification of directory scope 2020-05-14 16:31:22 +02:00
SourceProperties sourceFile properties: add property INCLUDE_DIRECTORIES 2018-01-24 15:10:10 +01:00
string string: Add new HEX sub-command 2020-02-19 09:11:05 -05:00
Swift Swift: support Ninja Multi-Config 2020-03-09 09:11:22 -04:00
Syntax cmake_command: Add command to EVAL a CMake script as a string 2020-03-03 08:42:13 -05:00
target_compile_definitions target_*: Allow setting INTERFACE properties of UNKNOWN IMPORTED targets 2019-07-22 10:23:39 -04:00
target_compile_features cmTargetPropCommandBase: check keywords after parsing 2018-10-26 12:09:41 -04:00
target_compile_options target_compile_options: ensure BEFORE keyword is handled in all scopes 2020-01-11 01:25:25 +01:00
target_include_directories cmTargetPropCommandBase: check keywords after parsing 2018-10-26 12:09:41 -04:00
target_link_directories Genex: Add $<LINK_LANGUAGE:...> and $<LINK_LANG_AND_ID:...> 2020-02-26 16:38:42 +01:00
target_link_libraries Merge topic 'link-libs-config-case' 2020-03-31 09:19:42 -04:00
target_link_options Tests: Restore NVCC-specific CUDA tests 2020-05-20 10:48:20 -04:00
target_sources cmTargetPropCommandBase: check keywords after parsing 2018-10-26 12:09:41 -04:00
TargetObjects Relax the usage of TARGET_OBJECTS generator expression 2019-04-19 13:52:50 -04:00
TargetPolicies CUDA: Device linking use now link options 2020-04-19 15:53:11 +02:00
TargetProperties Add set_property option: DEPRECATION 2020-01-02 17:11:31 -05:00
TargetPropertyGeneratorExpressions cmake: Display error if generate step fails 2019-05-13 10:31:39 -04:00
TargetSources VS: Add support for per-config sources 2019-10-17 14:05:39 -04:00
test_include_dirs GENERATOR_IS_MULTI_CONFIG: Use for multi-config checks in Tests 2017-12-30 09:35:56 +11:00
ToolchainFile Restore support for include_directories() in toolchain files 2019-03-25 11:48:17 -04:00
try_compile cmCoreTryCompile::CleanupFiles now removes symlinks instead of their contents. 2019-12-26 17:39:36 +01:00
try_run Tests: fix failures with gnu mode clang on windows 2019-05-24 08:43:42 +02:00
UnityBuild Unity Builds: Support explicit specification of sources to groups 2020-05-07 11:13:34 -04:00
UseSWIG FindPython*: Manage weak link for Python modules 2019-05-07 16:37:24 +02:00
variable_watch variable_watch: trigger on variables set via PARENT_SCOPE 2018-04-11 15:02:07 -04:00
VisibilityPreset The error message for VISIBILITY_PRESET now documents valid options. 2019-06-03 09:56:03 -04:00
VS10Project Unity Builds: Support explicit specification of sources to groups 2020-05-07 11:13:34 -04:00
VS10ProjectWinCE VS10Generator: add project properties to enable WindowsCE deployment. 2019-06-19 15:11:57 -07:00
VSSolution
while
WorkingDirectory Remove unnecessary CTEST_PROJECT_NAME variables 2018-11-20 21:43:27 +01:00
WriteBasicConfigVersionFile CMakePackageConfigHelpers: Add ARCH_INDEPENDENT option 2018-11-30 22:52:40 -08:00
WriteCompilerDetectionHeader WCDH: introduce BARE_FEATURES 2018-04-03 20:56:28 +02:00
XcodeProject Swift: Exclude SDK include paths 2020-02-10 10:32:37 -05:00
CMakeLists.txt Merge topic 'CheckLinkerFlag-module' 2020-05-25 10:59:01 -04:00
color_warning.c ctest_build: ignore ANSI color 2019-08-22 15:53:42 -04:00
exit_code.c clang-tidy: address readability-else-after-return lint 2020-04-13 11:26:03 -04:00
FileAPIDummyFile.cmake fileapi: Add test for cmakeFiles v1 2018-12-12 13:02:31 -05:00
print_stdin.c CTest: Restore inheritance of stdin by test processes 2018-11-15 08:08:56 -05:00
pseudo_cppcheck.c clang-tidy: address readability-else-after-return lint 2020-04-13 11:26:03 -04:00
pseudo_cpplint.c
pseudo_emulator_custom_command_arg.c Teach CROSSCOMPILING_EMULATOR to support arguments 2019-06-03 10:17:17 -04:00
pseudo_emulator_custom_command.c
pseudo_emulator.c
pseudo_iwyu.c
pseudo_tidy.c
README.rst RunCMake: Automatically support platform out override files 2019-06-21 11:06:39 -04:00
RunCMake.cmake Tests: Teach RunCMake to ignore PGI license expiry warnings 2019-11-01 09:23:03 -04:00
RunCTest.cmake Tests: Teach run_ctest to handle removal of CTestConfig.cmake 2018-11-26 08:05:13 -05:00

This directory contains tests that run CMake to configure a project
but do not actually build anything.  To add a test:

1. Add a subdirectory named for the test, say ``<Test>/``.

2. In ``./CMakeLists.txt`` call ``add_RunCMake_test`` and pass the
   test directory name ``<Test>``.

3. Create script ``<Test>/RunCMakeTest.cmake`` in the directory containing::

    include(RunCMake)
    run_cmake(SubTest1)
    ...
    run_cmake(SubTestN)

   where ``SubTest1`` through ``SubTestN`` are sub-test names each
   corresponding to an independent CMake run and project configuration.

   One may also add calls of the form::

    run_cmake_command(SubTestI ${CMAKE_COMMAND} ...)

   to fully customize the test case command-line.

   Alternatively, if the test is to cover running ``ctest -S`` then use::

    include(RunCTest)
    run_ctest(SubTest1)
    ...
    run_ctest(SubTestN)

   and create ``test.cmake.in``, ``CTestConfig.cmake.in``, and
   ``CMakeLists.txt.in`` files to be configured for each case.

4. Create file ``<Test>/CMakeLists.txt`` in the directory containing::

    cmake_minimum_required(...)
    project(${RunCMake_TEST} NONE) # or languages needed
    include(${RunCMake_TEST}.cmake)

   where ``${RunCMake_TEST}`` is literal.  A value for ``RunCMake_TEST``
   will be passed to CMake by the ``run_cmake`` macro when running each
   sub-test.

5. Create a ``<Test>/<SubTest>.cmake`` file for each sub-test named
   above containing the actual test code.  Optionally create files
   containing expected test results:

   ``<SubTest>-result.txt``
    Regex matching expected process result, if not ``0``
   ``<SubTest>-stdout.txt``
    Regex matching expected stdout content
   ``<SubTest>-stderr.txt``
    Regex matching expected stderr content, if not ``^$``
   ``<SubTest>-check.cmake``
    Custom result check.

  Note that when a specific platform expects differing stdout or stderr that
  can be done by adding a platform specific output file. These follow the
  naming convention of:
   ``<SubTest>-stdout-<platform_lower_case>.txt``
   ``<SubTest>-stderr-<platform_lower_case>.txt``

   Note that trailing newlines will be stripped from actual and expected
   test output before matching against the stdout and stderr expressions.
   The code in ``<SubTest>-check.cmake`` may use variables

   ``RunCMake_TEST_SOURCE_DIR``
    Top of test source tree
   ``RunCMake_TEST_BINARY_DIR``
    Top of test binary tree

   and an failure must store a message in ``RunCMake_TEST_FAILED``.

To speed up local testing, you can choose to run only a subset of
``run_cmake()`` tests in a ``RunCMakeTest.cmake`` script by using the
``RunCMake_TEST_FILTER`` environment variable. If this variable is set,
it is treated as a regular expression, and any tests whose names don't
match the regular expression are not run. For example::

  $ RunCMake_TEST_FILTER="^example" ctest -R '^RunCMake\.Example$'

This will only run subtests in ``RunCMake.Example`` that start with
``example``.