Brad King f03a80aefd Merge topic 'genex-target-property-lifetime' 6 年 前
..
Android ca97d4cb5f Android: Add support for NDK r18 7 年 前
AndroidMK c1f5a44b28 LINK_OPTIONS: Add new family of properties 7 年 前
AndroidTestUtilities 8a5cb84b0e AndroidTestUtilities: do not require ExternalData unconditionally 8 年 前
AutoExportDll d7204e649e Revise C++ coding style using clang-format-6.0 7 年 前
Autogen 17ac7c4024 Tests: add cases for providing Qt5Core_VERSION manually 6 年 前
BuildDepends c267ea1c3e GENERATOR_IS_MULTI_CONFIG: Use for multi-config checks in Tests 7 年 前
BundleUtilities 31b6825bd2 Merge branch 'master' into deployqt4-cmp0080-fix 7 年 前
Byproducts 80e2f8ee0c Ninja,Makefile: Add tests for handling of byproducts by clean operations 7 年 前
CMP0004 d05a9bd1e6 Cygwin: Avoid legacy warnings in RunCMake.* tests 12 年 前
CMP0019 4f5bbbeab9 Add deprecation warnings for policies CMP0036 and below 8 年 前
CMP0022 70c6557285 Tests: Fix RunCMake.CMP0022 tll case for Debug configuration 8 年 前
CMP0026 514f0b572e Testing: Update hard-coded line numbers to [0-9]+ in some tests 7 年 前
CMP0027 b1bbee3e9a Record more policies on targets when created 11 年 前
CMP0028 4f5bbbeab9 Add deprecation warnings for policies CMP0036 and below 8 年 前
CMP0037 a0ec14d363 Add deprecation warnings for policies CMP0054 and below 8 年 前
CMP0038 a0ec14d363 Add deprecation warnings for policies CMP0054 and below 8 年 前
CMP0039 a0ec14d363 Add deprecation warnings for policies CMP0054 and below 8 年 前
CMP0040 a0ec14d363 Add deprecation warnings for policies CMP0054 and below 8 年 前
CMP0041 a0ec14d363 Add deprecation warnings for policies CMP0054 and below 8 年 前
CMP0042 a0ec14d363 Add deprecation warnings for policies CMP0054 and below 8 年 前
CMP0043 a0ec14d363 Add deprecation warnings for policies CMP0054 and below 8 年 前
CMP0045 a0ec14d363 Add deprecation warnings for policies CMP0054 and below 8 年 前
CMP0046 a0ec14d363 Add deprecation warnings for policies CMP0054 and below 8 年 前
CMP0049 a0ec14d363 Add deprecation warnings for policies CMP0054 and below 8 年 前
CMP0050 a0ec14d363 Add deprecation warnings for policies CMP0054 and below 8 年 前
CMP0051 514f0b572e Testing: Update hard-coded line numbers to [0-9]+ in some tests 7 年 前
CMP0053 a0ec14d363 Add deprecation warnings for policies CMP0054 and below 8 年 前
CMP0054 a0ec14d363 Add deprecation warnings for policies CMP0054 and below 8 年 前
CMP0055 0c709cb2a2 Add deprecation warnings for policies CMP0063 and below 7 年 前
CMP0057 aed6239e40 if: Implement new IN_LIST operator 10 年 前
CMP0059 845cb217a7 CMP0059: Fix typo in policy description 9 年 前
CMP0060 0c709cb2a2 Add deprecation warnings for policies CMP0063 and below 7 年 前
CMP0064 6845e2559d Add deprecation warnings for policies CMP0065 and below 6 年 前
CMP0065 566086187f Fix typos. 9 年 前
CMP0068 1ba91291e3 Add policy CMP0068 separate install_name and RPATH settings on macOS 8 年 前
CMP0069 8cc04b1918 cmake: Display error if generate step fails 6 年 前
CMP0081 b5915744eb LINK_DIRECTORIES target property: add policy for absolute paths check. 7 年 前
CMakeRoleGlobalProperty 4b95e7fe63 CMAKE_ROLE: Fix value in --build for Visual Studio generators 6 年 前
CPack 4568d046c4 Properties: Add CMAKE_ROLE global property 6 年 前
CPackCommandLine eba7273c20 cpack: Better error message when generator doesn't exist. 7 年 前
CPackConfig ed015bde2b CPack: Restore support for 0-valued version components 7 年 前
CPackInstallProperties 69050f4d16 Tests: Use full output paths in file(GENERATE) calls 8 年 前
CPackSymlinks 5f686b8a6b Tests: Add case for CPack source package with symlinks 10 年 前
CSharpCustomCommand a56edad6d6 CSharp: Fix regression in VS project type selection for custom target 7 年 前
CSharpReferenceImport d7204e649e Revise C++ coding style using clang-format-6.0 7 年 前
CTest 70c50aa23c Revert "Remove CTestTestfile.cmake when BUILD_TESTING is OFF" 7 年 前
CTestCommandLine cae9d2a61a CTest: Teach --show-only= to reject unknown values 6 年 前
CTestTimeoutAfterMatch 1ca53f5ef1 Remove unnecessary CTEST_PROJECT_NAME variables 7 年 前
CacheNewline c42b377c29 cmCacheManager: Test and document newline truncation behavior 7 年 前
CheckIPOSupported 567fabe88e IPO: INTERPROCEDURAL_OPTIMIZATION (LTCG) for Visual Studio 7 年 前
CheckModules a61ae3fb80 CheckIncludeFiles: Honor CMAKE_REQUIRED_LIBRARIES 7 年 前
ClangTidy 80ebc55a7c cmake: Report if the <LANG>_CLANG_TIDY tool exits with non-zero 9 年 前
CommandLine 8ed6efbbd3 Merge topic 'default-generator-env' 6 年 前
CommandLineTar ea9a2c1759 cmake: tar: Parse 'cmake -E tar' arguments 6 年 前
CompatibleInterface d9fd2f5402 Revise C++ coding style using clang-format 9 年 前
CompileDefinitions c1bf1a59ff CompileDefinitions: Add unit test for setting empty content. 10 年 前
CompileFeatures e556f1b909 CompileFeatures: Makes tests work with meta-feature only 8 年 前
CompilerChange 15610bb5b1 Drop use of configure_file IMMEDIATE option 12 年 前
CompilerLauncher f19c70c3d2 Fortran: Add option to run the compiler through launcher tools 8 年 前
CompilerNotFound afeb4eb243 nmake/jom: Only warn about bad VS environment if compiler not found. 10 年 前
Configure 25b6e7b710 Tolerate removed/replaced CMakeCache.txt with old CMakeFiles/ 9 年 前
Cppcheck 3b80cd77fb Fail the build if cppcheck returns a non-zero exit code 7 年 前
Cpplint bfcc20343c Update cpplint support to return 0 and mark warnings for CDash. 8 年 前
CrosscompilingEmulator ab3b549ee0 CROSSCOMPILING_EMULATOR: Fix test generation for empty value 6 年 前
DisallowedCommands 4f5bbbeab9 Add deprecation warnings for policies CMP0036 and below 8 年 前
ExportWithoutLanguage d9fd2f5402 Revise C++ coding style using clang-format 9 年 前
ExternalData 514f0b572e Testing: Update hard-coded line numbers to [0-9]+ in some tests 7 年 前
ExternalProject 19d86e26e3 ExternalProject: add LOG_OUTPUT_ON_FAILURE option 7 年 前
FPHSA 5dc215e03b FPHSA: fix typo in comment 8 年 前
FeatureSummary 6f62c66b2c FeatureSummary: Add FeatureSummary_<TYPE>_DESCRIPTION global properties 8 年 前
FetchContent a94355c7b7 FetchContent: Add new command FetchContent_MakeAvailable() 6 年 前
FileAPI 4b6b2a571c fileapi: extend codemodel v2 with directory details 7 年 前
FileAPIExternalSource ea0a060168 fileapi: Add test for codemodel v2 7 年 前
File_Generate ce078dda79 Relax the usage of TARGET_OBJECTS generator expression 6 年 前
FindBoost 5108759ed2 FindBoost: Introduce CMP0093 to report Boost_VERSION in x.y.z format 6 年 前
FindGTK2 4bc2c16b5d FindGTK2: Add unit test to check variables when run twice 8 年 前
FindLua 9455512d22 FindLua: Add tests for this module 7 年 前
FindMatlab 59fb9e89b2 FindMatlab: Matlab Runtime Compiler support 7 年 前
FindOpenGL 2ea17412a9 FindOpenGL: Add policy CMP0072 to prefer GLVND for legacy GL 8 年 前
FindPkgConfig f401a57160 pkg_get_variable now sets PKG_CONFIG_PATH like pkg_check_modules 6 年 前
Framework 26ea022c3b Add variable CMAKE_FRAMEWORK 6 年 前
GNUInstallDirs f835f189ae GNUInstallDirs: Update FreeBSD "info" destination to share/info 7 年 前
GenerateExportHeader d7204e649e Revise C++ coding style using clang-format-6.0 7 年 前
GeneratorExpression 5a1af142f1 Genex: Fix value lifetimes in nested TARGET_PROPERTY evaluation 6 年 前
GeneratorInstance 9ffb35386f VS: Select and save a VS 2017 instance persistently 8 年 前
GeneratorPlatform db02be85a0 VS: Provide the default platform name to project code 6 年 前
GeneratorToolset 0fd742a6ff VS: Teach VS 2019 generator to select host tools matching host arch 6 年 前
GetPrerequisites 08be74bfd7 GetPrerequisites: Fix handling of executable scripts 6 年 前
GoogleTest d7204e649e Revise C++ coding style using clang-format-6.0 7 年 前
IfacePaths a0ec14d363 Add deprecation warnings for policies CMP0054 and below 8 年 前
IncludeWhatYouUse d9fd2f5402 Revise C++ coding style using clang-format 9 年 前
IncompatibleQt d9fd2f5402 Revise C++ coding style using clang-format 9 年 前
Languages 7b74213461 CUDA: Fix crash on linking to a CUDA target without CUDA enabled 7 年 前
LinkStatic 974de0e199 static library: add property STATIC_LIBRARY_OPTIONS 7 年 前
LinkWhatYouUse 96242f8022 Add options to run `ldd -u -r` as a "link-what-you-use" tool 9 年 前
MSVCRuntimeLibrary 8cc04b1918 cmake: Display error if generate step fails 6 年 前
MSVCWarningFlags 1baf122cd4 MSVC: Do not add /W3 to CMAKE_<LANG>_FLAGS by default 6 年 前
Make 66801f4d40 cmake: Add tests for verbose output to --build mode 6 年 前
MaxRecursionDepth a6982cff0d cmMakefile: Impose maximum recursion limit 6 年 前
MetaCompileFeatures 613ac56e50 Add a test to verify meta-feature parity with granular features 6 年 前
MultiLint 992962c76d cmcmd: Restore support for running multiple lint tools 8 年 前
Ninja 9f76961de8 Support job pools in custom commands and targets 6 年 前
ObjectLibrary 8cc04b1918 cmake: Display error if generate step fails 6 年 前
ObsoleteQtMacros d9fd2f5402 Revise C++ coding style using clang-format 9 年 前
ParseImplicitIncludeInfo 442f4c4902 Merge branch 'backport-implicit-includes-relative' 6 年 前
PolicyScope 7c36d2067b cmListFileBacktrace: Refactor storage to provide efficient value semantics 9 年 前
PositionIndependentCode f255280fd9 PIE link options: Update strategy to fix performance regression 7 年 前
RuntimePath 6114d85a7d RPATH: Add option for using $ORIGIN in build tree 7 年 前
ScriptMode 50572d638b set_directory_properties: Restore in script mode 7 年 前
SourceProperties 0448311179 sourceFile properties: add property INCLUDE_DIRECTORIES 7 年 前
Swift a9180ccf9a Tests: add a check for the Swift compiler 6 年 前
Syntax 82a4822610 CMP0053: document that `$` is a valid literal variable character 7 年 前
TargetObjects ce078dda79 Relax the usage of TARGET_OBJECTS generator expression 6 年 前
TargetPolicies c4b4d8b3a6 POSITION_INDEPENDENT_CODE: Manage link flags for executables 7 年 前
TargetPropertyGeneratorExpressions 8cc04b1918 cmake: Display error if generate step fails 6 年 前
TargetSources 514f0b572e Testing: Update hard-coded line numbers to [0-9]+ in some tests 7 年 前
ToolchainFile 588fa1bb9e Restore support for include_directories() in toolchain files 6 年 前
UseSWIG 30b873c05d FindPython*: Manage weak link for Python modules 6 年 前
VS10Project 2a9ff9703e MSVC: Add support for /JMC (Just My Code) 6 年 前
VS10ProjectWinCE 917c035ada VS: support suppressing deployment of selected targets 6 年 前
VSSolution 5cf9c3d0cc VS: Add SolutionGuid to generated .sln files 8 年 前
VisibilityPreset 0c709cb2a2 Add deprecation warnings for policies CMP0063 and below 7 年 前
WorkingDirectory 1ca53f5ef1 Remove unnecessary CTEST_PROJECT_NAME variables 7 年 前
WriteBasicConfigVersionFile eb973f935f CMakePackageConfigHelpers: Add ARCH_INDEPENDENT option 7 年 前
WriteCompilerDetectionHeader f38d050231 WCDH: introduce BARE_FEATURES 7 年 前
XcodeProject bae7a2e250 Merge topic 'error-generate-step' 6 年 前
add_custom_command f59c33a763 VS: Generate a custom command only in the least dependent target 7 年 前
add_custom_target 6e59491659 add_custom_{command,target}: Fix crash on empty expanded command 7 年 前
add_dependencies d9f836e956 Add a getter for manually added target dependencies 8 年 前
add_executable 8cc04b1918 cmake: Display error if generate step fails 6 年 前
add_library 8cc04b1918 cmake: Display error if generate step fails 6 年 前
add_link_options 66ea1a3795 LINK_OPTIONS: Add support of "LINKER:" prefix 7 年 前
add_subdirectory dc6888573d Pass EXCLUDE_FROM_ALL from directory to targets 6 年 前
alias_targets e567d7eb63 add_library: Restore error on alias of non-global imported target 7 年 前
build_command 0c709cb2a2 Add deprecation warnings for policies CMP0063 and below 7 年 前
cmake_minimum_required 8dc97acb03 cmake_minimum_required: Tolerate unknown future arguments 7 年 前
cmake_parse_arguments 5228432b45 cmake_parse_arguments: add KEYWORDS_MISSING_VALUES 6 年 前
configure_file 6199637e95 configure_file: canonicalize input and output path in dependencies 7 年 前
continue 7a649111cd Use string(APPEND) in Tests 9 年 前
ctest_build 1ca53f5ef1 Remove unnecessary CTEST_PROJECT_NAME variables 7 年 前
ctest_cmake_error 1ca53f5ef1 Remove unnecessary CTEST_PROJECT_NAME variables 7 年 前
ctest_configure 1ca53f5ef1 Remove unnecessary CTEST_PROJECT_NAME variables 7 年 前
ctest_coverage 1ca53f5ef1 Remove unnecessary CTEST_PROJECT_NAME variables 7 年 前
ctest_disabled_test 1ca53f5ef1 Remove unnecessary CTEST_PROJECT_NAME variables 7 年 前
ctest_fixtures 1ca53f5ef1 Remove unnecessary CTEST_PROJECT_NAME variables 7 年 前
ctest_labels_for_subprojects 1ca53f5ef1 Remove unnecessary CTEST_PROJECT_NAME variables 7 年 前
ctest_memcheck 9501a6145d CTest: Remove special case for Dart version <= 1 7 年 前
ctest_skipped_test 1ca53f5ef1 Remove unnecessary CTEST_PROJECT_NAME variables 7 年 前
ctest_start 1ca53f5ef1 Remove unnecessary CTEST_PROJECT_NAME variables 7 年 前
ctest_submit ba7e44eb7a ctest_submit: Add option BUILD_ID 6 年 前
ctest_test 1ca53f5ef1 Remove unnecessary CTEST_PROJECT_NAME variables 7 年 前
ctest_update 2a34d0ac36 ctest: Add new variable CTEST_UPDATE_VERSION_OVERRIDE 6 年 前
ctest_upload 1ca53f5ef1 Remove unnecessary CTEST_PROJECT_NAME variables 7 年 前
execute_process 044dcf9f8d execute_process: Add option to echo command lines 6 年 前
export f5acecaa6f cmExportCommand: Port to cmArgumentParser 6 年 前
file a1eb03569d file: Change REMOVE to ignore empty names 6 年 前
find_dependency ab358d6a85 Improve find_dependency argument handling 8 年 前
find_file b30b32a493 Drop find_(library|file|path) prefixes from PATH on non-Windows 9 年 前
find_library 6f5aede716 find_library: Skip 'lib => lib<arch>' searches if one symlinks the other 8 年 前
find_package b773e58099 find_package: add test coverage for CMAKE_FIND_PACKAGE_RESOLVE_SYMLINKS 6 年 前
find_path 188baef00c find_path: Fix location of <dir/header.h> in a framework on OS X 9 年 前
find_program c76c1ea208 find_program: Consider CWD only for paths with separator 7 年 前
foreach fb114a40aa Tests: Add test for bad foreach inside a function 8 年 前
get_filename_component edda30d0f5 Tests: Add tests for LAST_EXT and NAME_WLE 6 年 前
get_property 514f0b572e Testing: Update hard-coded line numbers to [0-9]+ in some tests 7 年 前
if edac95b955 cmIfCommand: Reject duplicate else() and misplaced elseif() 8 年 前
include d9fd2f5402 Revise C++ coding style using clang-format 9 年 前
include_directories a4bd30104f include_directories: Fix regression in BEFORE option (#15693) 10 年 前
include_external_msproject 57e48f16f2 VS: Add Visual Studio 16 2019 generator 6 年 前
include_guard 514f0b572e Testing: Update hard-coded line numbers to [0-9]+ in some tests 7 年 前
install a40f9083dd INTERFACE Target: allow (PUBLIC/PRIVATE)_HEADER properties 6 年 前
interface_library a40f9083dd INTERFACE Target: allow (PUBLIC/PRIVATE)_HEADER properties 6 年 前
list 258298f597 Help: Clarify ordering of list(REMOVE_DUPLICATES) 6 年 前
math 406f397e8b math: Restore toleration of unexpected characters in an expression 7 年 前
message 6cc93b370e message(): Add support for log levels 6 年 前
no_install_prefix 1c3918ff02 RunCMake: Remove unneeded files. 10 年 前
option f8a7cf85ad option: No CMP077 warnings when both cache and local variable exists 7 年 前
project b27247c8df project(): Add tests verifying variables set by second project() call 7 年 前
project_injected 1527defbfe cmMakefile: Enforce explicit use of project() command 6 年 前
return d124c41168 return: Add test for returning inside a foreach loop 11 年 前
separate_arguments 2a207aaca1 separgs: Add a NATIVE_COMMAND mode 8 年 前
set cb01b8c8ba set: warn of extra arguments after ENV value. 6 年 前
set_property 514f0b572e Testing: Update hard-coded line numbers to [0-9]+ in some tests 7 年 前
string 536cca60ea string: introduce `REPEAT` sub-command 6 年 前
target_compile_definitions 4babc9058a cmTargetPropCommandBase: check keywords after parsing 7 年 前
target_compile_features 4babc9058a cmTargetPropCommandBase: check keywords after parsing 7 年 前
target_compile_options 4babc9058a cmTargetPropCommandBase: check keywords after parsing 7 年 前
target_include_directories 4babc9058a cmTargetPropCommandBase: check keywords after parsing 7 年 前
target_link_directories 4babc9058a cmTargetPropCommandBase: check keywords after parsing 7 年 前
target_link_libraries 4201a11c2b Tests: add tests for empty-value keyword arguments in target_* 7 年 前
target_link_options 4babc9058a cmTargetPropCommandBase: check keywords after parsing 7 年 前
target_sources 4babc9058a cmTargetPropCommandBase: check keywords after parsing 7 年 前
test_include_dirs c267ea1c3e GENERATOR_IS_MULTI_CONFIG: Use for multi-config checks in Tests 7 年 前
try_compile 02587d80cf Add deprecation warnings for policies CMP0066 and below 6 年 前
try_run 091afa7342 Tests: Teach tests when to treat clang-cl as MSVC 6 年 前
variable_watch 65198cfd0f variable_watch: trigger on variables set via PARENT_SCOPE 7 年 前
while 1afbe7d2cc Make error message of standalone endwhile command consistent 9 年 前
CMakeLists.txt a9180ccf9a Tests: add a check for the Swift compiler 6 年 前
FileAPIDummyFile.cmake 42f0125ceb fileapi: Add test for cmakeFiles v1 7 年 前
README.rst b6eafd5781 Tests: Add RunCMake_TEST_FILTER environment variable 7 年 前
RunCMake.cmake 44d6370db3 Tests: Add RunCMake helper to run cmake with options 6 年 前
RunCTest.cmake d9195ab081 Tests: Teach run_ctest to handle removal of CTestConfig.cmake 7 年 前
exit_code.c d6051ca39e execute_process: Add option to get results of every child 8 年 前
print_stdin.c 86e8315482 CTest: Restore inheritance of stdin by test processes 7 年 前
pseudo_cppcheck.c 3b80cd77fb Fail the build if cppcheck returns a non-zero exit code 7 年 前
pseudo_cpplint.c 0618ddf6b1 Add properties to run the cpplint style checker with the compiler 8 年 前
pseudo_emulator.c d9fd2f5402 Revise C++ coding style using clang-format 9 年 前
pseudo_emulator_custom_command.c e7480d670b Fix custom command target substitution with CROSSCOMPILING_EMULATOR 9 年 前
pseudo_iwyu.c 44de615781 cmake: Comment why we ignore the include-what-you-use return code 9 年 前
pseudo_tidy.c 80ebc55a7c cmake: Report if the <LANG>_CLANG_TIDY tool exits with non-zero 9 年 前

README.rst

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 ``/``.

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

3. Create script ``/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 ``/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 ``/.cmake`` file for each sub-test named
above containing the actual test code. Optionally create files
containing expected test results:

``-result.txt``
Regex matching expected process result, if not ``0``
``-stdout.txt``
Regex matching expected stdout content
``-stderr.txt``
Regex matching expected stderr content, if not ``^$``
``-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 ``-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``.