CMake/Tests
Brad King 541e681da2 Merge topic 'split-custom-command-creation'
0e1faa28cb cmMakefile: Separate custom command setup from actual creation
56c204e8eb cmMakefile: Refactor AddCustomCommandOldStyle to be delay friendly
3061dc6ac9 add_custom_command: Add tests for rejecting literal quotes in commands
e893ab94ba cmMakefile: Validate command line for all custom commands
f1e846fdde cmMakefile: Extract custom command validation method
4926ab2454 cmMakefile: Create all generated byproducts as known sources

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3822
2019-09-20 10:24:32 -04:00
..
AliasTarget Clang: For MSVC ABI do not use modes older than C++14 2019-07-24 07:40:30 -04:00
Architecture
ArgumentExpansion
Assembler Tests: fix some Clang failures on Windows 2019-07-09 11:30:25 -04:00
BuildDepends
BundleGeneratorTest
BundleTest Xcode: Make BundleTests compatible with Xcode 11 2019-09-01 10:43:26 +02:00
BundleUtilities
CFBundleTest Xcode: Make BundleTests compatible with Xcode 11 2019-09-01 10:43:26 +02:00
CheckCompilerRelatedVariables
CMakeCommands Genex: CompileLang and CompileLangAndId now match against a list of ids 2019-06-03 10:20:23 -04:00
CMakeLib clang-tidy: modernize-deprecated-headers 2019-09-16 10:11:13 -04:00
CMakeOnly FindPythonInterp: Document lack of version filtering for plain python 2019-07-30 12:09:43 -04:00
CMakeServerLib IWYU: Fix handling of <memory> standard header 2019-07-10 11:48:56 -04:00
CMakeTestAllGenerators
CMakeTestMultipleConfigures
CMakeTests Property: Add INSTALL_REMOVE_ENVIROMENT_RPATH property 2019-07-25 12:30:23 -04:00
CoberturaCoverage
CommandLength
CommandLineTest
CompatibleInterface
CompileCommandOutput
CompileDefinitions
CompileFeatures CompileFeatures: Relax cxx_relaxed_constexpr compiler requirements 2019-05-13 13:11:32 -04:00
CompileOptions Merge topic 'clang-gnulike-support' 2019-05-29 09:22:12 -04:00
Complex Clang: For MSVC ABI do not use modes older than C++14 2019-07-24 07:40:30 -04:00
ComplexOneConfig Clang: For MSVC ABI do not use modes older than C++14 2019-07-24 07:40:30 -04:00
ConfigSources
COnly Tests: Collect SourceFileProperty tests 2019-08-27 22:28:34 +05:30
Contracts
CPackComponents
CPackComponentsDEB CPackComponentsDEB test: simplify error reporting 2019-07-05 16:25:05 +02:00
CPackComponentsForAll
CPackComponentsPrefix
CPackTestAllGenerators
CPackUseDefaultVersion
CPackUseProjectVersion
CPackUseShortProjectVersion
CPackWiXGenerator
CrossCompile
CSharpLinkFromCxx
CSharpLinkToCxx
CSharpOnly
CTestBuildCommandProjectInSubdir Remove unnecessary CTEST_PROJECT_NAME variables 2018-11-20 21:43:27 +01:00
CTestConfig Remove unnecessary CTEST_PROJECT_NAME variables 2018-11-20 21:43:27 +01:00
CTestCoverageCollectGCOV CTestCoverageCollectGCOV: run gcov only once 2019-05-03 21:25:20 +01:00
CTestLimitDashJ
CTestScriptMode
CTestTest
CTestTest2
CTestTestBadExe CTest: Remove special case for Dart version <= 1 2018-11-29 00:29:13 +01:00
CTestTestBadGenerator CTest: Remove special case for Dart version <= 1 2018-11-29 00:29:13 +01:00
CTestTestChecksum
CTestTestCostSerial CTest: Remove special case for Dart version <= 1 2018-11-29 00:29:13 +01:00
CTestTestCrash CTest: Remove special case for Dart version <= 1 2018-11-29 00:29:13 +01:00
CTestTestCycle CTest: Remove special case for Dart version <= 1 2018-11-29 00:29:13 +01:00
CTestTestDepends CTest: Remove special case for Dart version <= 1 2018-11-29 00:29:13 +01:00
CTestTestEmptyBinaryDirectory
CTestTestFailure CTest: Remove special case for Dart version <= 1 2018-11-29 00:29:13 +01:00
CTestTestFdSetSize Remove unnecessary CTEST_PROJECT_NAME variables 2018-11-20 21:43:27 +01:00
CTestTestLabelRegExp
CTestTestLaunchers CTest: Remove special case for Dart version <= 1 2018-11-29 00:29:13 +01:00
CTestTestMissingDependsExe
CTestTestParallel CTest: Remove special case for Dart version <= 1 2018-11-29 00:29:13 +01:00
CTestTestResourceLock CTest: Remove special case for Dart version <= 1 2018-11-29 00:29:13 +01:00
CTestTestRunScript
CTestTestScheduler CTest: Remove special case for Dart version <= 1 2018-11-29 00:29:13 +01:00
CTestTestSerialInDepends
CTestTestSerialOrder
CTestTestSkipReturnCode CTest: Remove special case for Dart version <= 1 2018-11-29 00:29:13 +01:00
CTestTestStopTime CTest: Remove special case for Dart version <= 1 2018-11-29 00:29:13 +01:00
CTestTestSubdir CTest: Remove special case for Dart version <= 1 2018-11-29 00:29:13 +01:00
CTestTestTimeout CTest: Remove special case for Dart version <= 1 2018-11-29 00:29:13 +01:00
CTestTestUpload CTest: Remove special case for Dart version <= 1 2018-11-29 00:29:13 +01:00
CTestTestVerboseOutput CTest: Remove special case for Dart version <= 1 2018-11-29 00:29:13 +01:00
CTestTestZeroTimeout CTest: Remove special case for Dart version <= 1 2018-11-29 00:29:13 +01:00
Cuda CUDA: Do not device link if CUDA is not an enabled language 2019-07-01 08:29:10 -04:00
CudaOnly CUDA: static lib device linking computes required static libs 2019-09-05 10:51:02 -04:00
CustComDepend
CustomCommand
CustomCommandByproducts Byproducts: Add test for collapsing of full paths in byproducts 2019-09-16 10:24:24 +02:00
CustomCommandWorkingDirectory
CxxDialect
CxxOnly
CxxSubdirC
DelphiCoverage
Dependency
DoubleProject
EmptyDepends
EmptyLibrary
EmptyProperty
Environment
ExportImport InterfaceLibrary: Whitelist EXPORT_PROPERTIES property 2019-05-17 09:20:04 -04:00
ExternalOBJ
ExternalProject ExternalProject: Support not initializing any submodules 2019-07-24 09:36:30 -04:00
ExternalProjectLocal Tests: Make ExternalProjectLocal independent of Tutorial directory 2019-01-27 16:03:00 -05:00
ExternalProjectSourceSubdir
ExternalProjectSourceSubdirNotCMake ExternalProject: support SOURCE_SUBDIR for BUILD_IN_SOURCE 2019-01-17 13:40:30 -05:00
ExternalProjectSubdir
ExternalProjectUpdate
FindALSA
FindBoost Tests.FindBoost: Don't use BoostConfig in MODULE test 2019-06-18 08:22:50 -04:00
FindBZip2
FindCups FindCups: add imported target 2019-02-06 11:20:57 -05:00
FindCURL FindCURL: add test for component 2018-12-06 11:49:04 -05:00
FindDoxygen FindDoxygen: add USE_STAMP_FILE option 2019-09-06 09:12:09 +10:00
FindEnvModules FindEnvMod: Remove unreliable test case 2019-09-16 13:10:40 -04:00
FindEXPAT
FindFontconfig FindFontconfig: Convert module variables to camel case 2019-03-26 14:14:09 -04:00
FindFreetype
FindGDAL
FindGIF FindGIF: Add test 2018-11-20 21:07:03 +01:00
FindGit FindGit: Add imported target 2019-01-21 10:01:56 -05:00
FindGLEW FindGLEW: Add test 2019-03-15 11:22:32 -04:00
FindGnuTLS FindGnuTLS: add target GnuTLS::GnuTLS 2019-09-18 12:03:53 -04:00
FindGSL
FindGTest
FindGTK2
FindIconv FindIconv test: request C++11 2019-06-25 15:14:02 +02:00
FindICU
FindJPEG
FindJsonCpp
FindLibinput
FindLibLZMA FindLibLZMA: add imported target 2018-12-13 09:40:11 +09:00
FindLibRHash
FindLibUV
FindLibXml2
FindLTTngUST
FindMatlab FindMatlab: EXCLUDE_FROM_ALL parameter to matlab_add_mex 2019-06-26 19:53:02 +02:00
FindModulesExecuteAll
FindMPI
FindODBC
FindOpenACC FindOpenACC: Provide import targets and OpenACC_<lang>_OPTIONS variable 2019-08-19 15:20:38 -04:00
FindOpenCL
FindOpenGL
FindOpenMP
FindOpenSSL
FindPackageModeMakefileTest
FindPackageTest Merge topic 'find_package-prefer-config-not-found' 2019-08-07 09:57:35 -04:00
FindPatch
FindPNG
FindPostgreSQL
FindProtobuf Tests: require C++11 for some protobuf tests 2019-07-03 18:49:49 +02:00
FindPython FindPython: Add capability to specify directly artifacts 2019-09-02 17:20:53 +02:00
FindSQLite3
FindThreads FindThreads: Drop IRIX-specific options and results 2018-12-07 13:33:01 -05:00
FindTIFF
FindVulkan
FindX11 Tests/FindX11: add a test 2018-11-15 13:08:18 -05:00
FindXalanC
FindXercesC
ForceInclude
Fortran Remove now-unused code once used for MIPSpro on IRIX 2019-02-21 11:12:51 -05:00
FortranC
FortranModules Fortran: Fix module dependency scanning with upper-case SUBMODULE 2018-11-20 14:16:26 -05:00
FortranOnly Ninja: Pass preprocessor definitions when compiling with Intel Fortran 2019-09-03 14:20:26 -04:00
Framework
FunctionTest
GeneratorExpression add_custom_command: Delay slash conversion until after genex evaluation 2019-09-13 10:56:26 -04:00
GhsMulti GHS: Update tests and notes 2019-04-11 13:15:51 -04:00
GoogleTest
ImportedSameName
IncludeDirectories add_library: Now support aliasing unknown import targets 2019-03-26 15:54:48 -04:00
IncludeDirectoriesCPATH Do not exclude include directories made implicit by CPATH 2019-05-30 09:24:59 -04:00
InterfaceLibrary Fix EXCLUDE_FROM_ALL on directory with an interface library 2019-02-08 08:17:48 -05:00
InterfaceLinkLibraries
iOSNavApp
JacocoCoverage
Java
JavaExportImport
JavaJavah
JavaNativeHeaders
JavascriptCoverage
JCTest
Jump
LibName
LinkDirectory
LinkFlags
LinkLanguage
LinkLine
LinkLineOrder
LinkStatic
LoadCommand
LoadCommandOneConfig
MacroTest
MacRuntimePath
MakeClean Tests: Extend MakeClean test to test various target types 2019-08-26 09:31:03 -04:00
MathTest math(EXPR): Implement ~(exp_NOT) expression as documented 2019-07-23 07:33:50 -04:00
MFC
MissingInstall
MissingSourceFile
Module bindexplib: supporting llvm bitcode formats using llvm-nm 2019-08-30 11:30:38 -04:00
ModuleDefinition
MSManifest
MSVCRuntimeLibrary Flang: Implement MSVC runtime library abstraction 2019-08-09 10:18:54 -04:00
MumpsCoverage
NewlineArgs
ObjC++
ObjectLibrary Relax the usage of TARGET_OBJECTS generator expression 2019-04-19 13:52:50 -04:00
OutDir
OutName
OutOfBinary
OutOfSource
PDBDirectoryAndName Tests: fix some Clang failures on Windows 2019-07-09 11:30:25 -04:00
PerConfig
Plugin Tests: Decouple Plugin test from KWSys 2019-09-19 10:42:51 -04:00
Policy0002
PolicyScope
PositionIndependentTargets
PrecompiledHeader
PreOrder
Preprocess Tests: fix some Clang failures on Windows 2019-07-09 11:30:25 -04:00
Properties
PythonCoverage
Qt4And5Automoc
Qt4Autogen Autogen: Sort tests 2018-11-14 19:21:03 +01:00
Qt4Deploy
Qt4Targets
Qt5Autogen Autogen: Sort tests 2018-11-14 19:21:03 +01:00
QtAutogen Tests: At QtAutogen.MocIncludeSymlink test 2019-09-18 11:48:23 -04:00
QtAutomocNoQt
ReturnTest
RunCMake Merge topic 'split-custom-command-creation' 2019-09-20 10:24:32 -04:00
RuntimePath Fix rpath-link for shared lib with only private deps 2019-08-02 14:50:57 -04:00
SBCS
Server Help: Mark default CMake generator with asterisk 2019-01-18 12:57:34 -05:00
SetLang
Simple
SimpleCOnly
SourceFileIncludeDirProperty
SourceFileProperty Tests: Collect SourceFileProperty tests 2019-08-27 22:28:34 +05:30
SourceGroups source_group command ensures that FILES arguments are actually files 2019-04-25 20:51:40 +02:00
SourcesProperty
StagingPrefix cmake: Teach -E remove_directory to remove multiple directories 2019-06-03 14:20:00 -04:00
StringFileTest
SubDir
SubDirSpaces Remove now-unused code once used on IRIX 2019-01-11 13:50:46 -05:00
SubProject
SwiftMix SwiftMix: properly export SwiftMain method 2019-05-01 13:30:14 +02:00
SwiftOnly Swift: Restore support for enabling with INTERFACE libraries 2019-07-29 15:24:29 -04:00
SystemInformation
TargetName
TestDriver
Testing
TestsWorkingDirectory
TryCompile try_compile: Restore expansion of ;-list in COMPILE_DEFINITIONS 2019-02-15 06:21:19 -05:00
Unset
UseSWIG FindPython*: Manage weak link for Python modules 2019-05-07 16:37:24 +02:00
VariableUnusedViaSet
VariableUnusedViaUnset
VariableUsage
Visibility
VSExcludeFromDefaultBuild
VSExternalInclude VS: Add Visual Studio 16 2019 generator 2019-01-11 11:04:51 -05:00
VSGNUFortran
VSMASM
VSMidl
VSNASM
VSNsightTegra
VSProjectInSubdir
VSResource
VSResourceNinjaForceRSP
VSWindowsFormsResx
VSWinStorePhone VS: Fix WinRT component references 2019-02-01 13:04:52 -05:00
VSXaml Reduce size of PNG images 2019-01-25 09:14:51 -05:00
WarnUnusedCliUnused Test: Improve WarnUnusedCliUnused to run on all generators 2019-05-15 15:28:37 +02:00
Wrapping
X11
XCTest
.NoDartCoverage
bootstrap.bat.in
BootstrapTest.cmake
CheckFortran.cmake
CheckSwift.cmake Tests: add a check for the Swift compiler 2019-05-17 10:09:35 -04:00
CMakeBuildTest.cmake.in
CMakeCopyright.cmake
CMakeInstall.cmake
CMakeLists.txt FindGnuTLS: add target GnuTLS::GnuTLS 2019-09-18 12:03:53 -04:00
CTestUpdateBZR.cmake.in
CTestUpdateCommon.cmake Remove unnecessary CTEST_PROJECT_NAME variables 2018-11-20 21:43:27 +01:00
CTestUpdateCVS.cmake.in
CTestUpdateGIT.cmake.in
CTestUpdateGIT.sh.in
CTestUpdateHG.cmake.in
CTestUpdateP4.cmake.in
CTestUpdateSVN.cmake.in
EnforceConfig.cmake.in Merge topic 'clang-gnulike-support' 2019-05-29 09:22:12 -04:00
README.rst
test_clean.cmake.in

CMake Tests Directory
*********************

This directory contains the CMake test suite.
See also the `CMake Source Code Guide`_.

.. _`CMake Source Code Guide`: ../Help/dev/source.rst

Many tests exist as immediate subdirectories, but some tests
are organized as follows.

* ``CMakeLib/``:
  Source code, used for tests, that links to the ``CMakeLib`` library
  defined over in ``Source/``.

* ``CMakeOnly/``:
  Deprecated.  Tests that run CMake to generate a project but not build it.
  Superseded by ``Tests/RunCMake/``.

* ``Find*/``:
  Tests for specific find modules that can only be run on machines with
  the corresponding packages installed.  They are enabled in
  ``CMakeLists.txt`` by undocumented options used on CI builds.

* ``Module/``:
  Tests for specific CMake modules.

* ``RunCMake/``:
  Tests that run CMake and/or other tools while precisely checking
  their return code and stdout/stderr content.  Useful for testing
  error cases and diagnostic output.