CMake/Tests
Robert Maynard b5f20da94d CMakeParseImplicitLinkInfo supports comma separated link lines
It is currently presumed that the linker will generate
a space separated line. This is not the case for some
compilers such as IBM XL where it can output space or
comma separated. This is particularly apparent when IBM XL
is used as the host compiler for CUDA as it generates a comma
separated link line.
2019-08-28 10:39:53 -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: Avoid mutating App Bundle targets during generation 2019-04-11 10:35:14 -04:00
BundleUtilities
CFBundleTest
CheckCompilerRelatedVariables
CMakeCommands Genex: CompileLang and CompileLangAndId now match against a list of ids 2019-06-03 10:20:23 -04:00
CMakeLib Merge topic 'cmStringAlgorithms_ulong' 2019-08-16 14:49:28 -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: fix failures with gnu mode clang on windows 2019-05-24 08:43:42 +02:00
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
CTestConfig
CTestCoverageCollectGCOV CTestCoverageCollectGCOV: run gcov only once 2019-05-03 21:25:20 +01:00
CTestLimitDashJ
CTestScriptMode
CTestTest
CTestTest2
CTestTestBadExe
CTestTestBadGenerator
CTestTestChecksum
CTestTestCostSerial
CTestTestCrash
CTestTestCycle
CTestTestDepends
CTestTestEmptyBinaryDirectory
CTestTestFailure
CTestTestFdSetSize
CTestTestLabelRegExp
CTestTestLaunchers
CTestTestMissingDependsExe
CTestTestParallel
CTestTestResourceLock
CTestTestRunScript
CTestTestScheduler
CTestTestSerialInDepends
CTestTestSerialOrder
CTestTestSkipReturnCode
CTestTestStopTime
CTestTestSubdir
CTestTestTimeout
CTestTestUpload
CTestTestVerboseOutput
CTestTestZeroTimeout
Cuda CUDA: Do not device link if CUDA is not an enabled language 2019-07-01 08:29:10 -04:00
CudaOnly CUDA: Support CMAKE_CUDA_RESOLVE_DEVICE_SYMBOLS global variable 2019-08-06 09:55:40 -04:00
CustComDepend
CustomCommand
CustomCommandByproducts
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
FindDoxygen
FindEnvModules FindEnvModules: Provide a CMake interface to environment modules 2019-03-18 11:47:35 -04:00
FindEXPAT
FindFontconfig FindFontconfig: Convert module variables to camel case 2019-03-26 14:14:09 -04:00
FindFreetype
FindGDAL
FindGIF
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
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 Python_FIND_ABI hint. 2019-06-24 12:00:21 +02:00
FindSQLite3
FindThreads FindThreads: Drop IRIX-specific options and results 2018-12-07 13:33:01 -05:00
FindTIFF
FindVulkan
FindX11
FindXalanC
FindXercesC
ForceInclude
Fortran Remove now-unused code once used for MIPSpro on IRIX 2019-02-21 11:12:51 -05:00
FortranC
FortranModules
FortranOnly VS: Fix Fortran target type selection with RC sources 2019-03-01 11:58:21 -05:00
Framework
FunctionTest
GeneratorExpression Genex: PlatformId now can match against a list of ids. 2019-06-03 10:20:23 -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
IPO
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 cover subdirectories without targets 2019-05-18 12:27:29 +02:00
MathTest math(EXPR): Implement ~(exp_NOT) expression as documented 2019-07-23 07:33:50 -04:00
MFC
MissingInstall
MissingSourceFile
Module Clang: For MSVC ABI do not use modes older than C++14 2019-07-24 07:40:30 -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 Clang: For MSVC ABI do not use modes older than C++14 2019-07-24 07:40:30 -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
Qt4Deploy
Qt4Targets
Qt5Autogen
QtAutogen Tests: Autogen: Extend SameName test with additional header extensions 2019-07-04 12:30:40 +02:00
QtAutomocNoQt
ReturnTest
RunCMake CMakeParseImplicitLinkInfo supports comma separated link lines 2019-08-28 10:39:53 -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
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 Merge topic 'cmake-tutorial' 2019-08-20 09:19:22 -04:00
CTestUpdateBZR.cmake.in
CTestUpdateCommon.cmake
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.