mirror of
https://github.com/reactos/CMake.git
synced 2024-12-05 10:16:50 +00:00
ba907f7dc2
Until now it was checked with "if(VAR)", which will be false in case "0" is the content of the variable. |
||
---|---|---|
.. | ||
add_dependencies | ||
alias_targets | ||
build_command | ||
CheckModules | ||
cmake_minimum_required | ||
CMP0004 | ||
CMP0019 | ||
CMP0022 | ||
CMP0026 | ||
CMP0027 | ||
CMP0028 | ||
CMP0037 | ||
CMP0038 | ||
CMP0039 | ||
CMP0040 | ||
CMP0041 | ||
CMP0042 | ||
CMP0043 | ||
CMP0045 | ||
CMP0046 | ||
CMP0049 | ||
CMP0050 | ||
CMP0051 | ||
CMP0053 | ||
CMP0054 | ||
CommandLine | ||
CompatibleInterface | ||
CompileFeatures | ||
CompilerChange | ||
CompilerNotFound | ||
Configure | ||
configure_file | ||
CPackInstallProperties | ||
CTest | ||
DisallowedCommands | ||
export | ||
ExportWithoutLanguage | ||
ExternalData | ||
FeatureSummary | ||
file | ||
File_Generate | ||
find_dependency | ||
find_package | ||
FindPkgConfig | ||
FPHSA | ||
GeneratorExpression | ||
GeneratorPlatform | ||
GeneratorToolset | ||
get_filename_component | ||
if | ||
include | ||
include_directories | ||
include_external_msproject | ||
IncompatibleQt | ||
install | ||
interface_library | ||
Languages | ||
list | ||
message | ||
no_install_prefix | ||
ObjectLibrary | ||
ObsoleteQtMacros | ||
PositionIndependentCode | ||
project | ||
set | ||
SolutionGlobalSections | ||
string | ||
Syntax | ||
target_compile_features | ||
target_link_libraries | ||
TargetObjects | ||
TargetPolicies | ||
TargetPropertyGeneratorExpressions | ||
TargetSources | ||
try_compile | ||
variable_watch | ||
VisibilityPreset | ||
WriteCompilerDetectionHeader | ||
XcodeProject | ||
CMakeLists.txt | ||
README.rst | ||
RunCMake.cmake |
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. 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`` Process result expected if not "0" ``<SubTest>-stdout.txt`` Regex matching expected stdout content ``<SubTest>-stderr.txt`` Regex matching expected stderr content ``<SubTest>-check.cmake`` Custom result check. 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``.