summaryrefslogtreecommitdiffstats
path: root/Tests
Commit message (Collapse)AuthorAgeFilesLines
* cmTarget: Simplify INTERFACE_SOURCES usage requirement lookupBrad King2014-07-072-3/+7
| | | | Use the AddInterfaceEntries helper to avoid duplication.
* Merge topic 'ExternalProject_test'Brad King2014-07-021-54/+0
|\ | | | | | | | | 7269e69f ExternalProject test: remove unused file
| * ExternalProject test: remove unused fileRolf Eike Beer2014-07-011-54/+0
| |
* | Merge topic 'memcheck-test-no-lang'Brad King2014-07-021-1/+1
|\ \ | | | | | | | | | | | | 5217ad26 CTestTestMemcheck: do not search for compilers
| * | CTestTestMemcheck: do not search for compilersRolf Eike Beer2014-07-011-1/+1
| |/
* | Merge topic 'tests-add_test-NAME'Brad King2014-07-021-1/+1
|\ \ | | | | | | | | | | | | 902c9063 Tests: Use add_test(NAME) signature in add_test_macro
| * | Tests: Use add_test(NAME) signature in add_test_macroBen Boeckel2014-07-011-1/+1
| |/ | | | | | | This will allow generator expressions to be used in test arguments.
* | Merge topic 'fix-circular-transitive-properties-segfault'Brad King2014-07-0220-0/+128
|\ \ | | | | | | | | | | | | | | | 65aa5442 Target: Return null when a transitive property is not defined. 61ce6547 Genex: Fix stack overflow in transitive property evaluation.
| * | Genex: Fix stack overflow in transitive property evaluation.Stephen Kelly2014-07-0120-0/+128
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit v2.8.11~156^2~2 (Expand includes and defines transitively in 'external' genexes., 2013-02-13) introduced a recursive loop and a stack overflow during evaluation of a link implementation which depends on a transitive property, such as add_library(empty1 ...) add_library(empty2 ...) target_link_libraries(empty1 PRIVATE $<$<STREQUAL:$<TARGET_PROPERTY:INCLUDE_DIRECTORIES>,/foo/bar>:empty2> ) There is no use-case for code like that currently, but it should not cause a stack overflow. Avoid the recursion by reporting an error early if a case like this is found.
* | | Ninja: Add order-only dependencies to link commands (#14728)Ben Boeckel2014-07-011-0/+6
| |/ |/| | | | | | | | | | | | | | | | | | | | | | | A library or executable target that consists only of a reference to an object library may have no sources to compile or custom commands to run. The command in the target is the link (or archive) command. Add missing order-only dependencies to link commands so that target ordering dependencies are satisfied for it without depending on an intermediate compilation rule. Extend the ObjectLibrary test to cover this case. Co-Author: Brad King <brad.king@kitware.com>
* | Merge topic 'test-speedup-RunCMake.include_directories'Brad King2014-07-0119-44/+55
|\ \ | | | | | | | | | | | | | | | | | | | | | 9998d78d Tests: Speed up RunCMake.include_directories test 6eee5d74 Tests: Drop broken and now unused RunCMake_TEST_FILE option f0f15b93 Tests: Refactor RunCMake.include_directories to drop RunCMake_TEST_FILE 8707814e Tests: Refactor RunCMake.File_Generate to drop RunCMake_TEST_FILE
| * | Tests: Speed up RunCMake.include_directories testBrad King2014-06-3011-11/+11
| | | | | | | | | | | | | | | | | | Remove unnecessary language initializations. Change the main CMakeLists.txt project() call to specify NONE. Use enable_language(CXX) instead of project() in cases that need it to avoid enabling C too.
| * | Tests: Drop broken and now unused RunCMake_TEST_FILE optionBrad King2014-06-301-4/+1
| | | | | | | | | | | | | | | | | | | | | We cannot use -DRunCMake_TEST=${RunCMake_TEST_FILE} because test cases use project(${RunCMake_TEST}) and the project name cannot be a path to a file. The parent and grandparent commits removed the only uses of the option. Drop it now.
| * | Tests: Refactor RunCMake.include_directories to drop RunCMake_TEST_FILEBrad King2014-06-304-24/+35
| | | | | | | | | | | | | | | Drop use of RunCMake_TEST_FILE and pass the test file in through a definition in RunCMake_TEST_OPTIONS.
| * | Tests: Refactor RunCMake.File_Generate to drop RunCMake_TEST_FILEBrad King2014-06-304-5/+8
| |/ | | | | | | | | Drop use of RunCMake_TEST_FILE and pass the test file in through a definition in RunCMake_TEST_OPTIONS.
* | Merge topic 'vs14-generator'Brad King2014-06-3010-47/+8
|\ \ | |/ |/| | | | | | | | | | | | | | | | | f0e298ad Help: Add notes for topic 'vs14-generator' 5c105140 Tests: Simplify LoadCommand tests b1cbd577 FindBoost: Add -vc140 mangling for VS 14 bdc7d9c8 VS14: Fix Cl and Link flag tables as previous versions d96b3f68 VS14: Generate flag tables from MSBuild v140 tool files 65624c39 VS14: Add Visual Studio 14 generator (#14982) 8635ac23 Tests/Preprocess: Remove unnecessary VS version tests
| * Tests: Simplify LoadCommand testsBrad King2014-06-256-34/+0
| | | | | | | | | | | | Drop out-of-place coverage of CheckFunctionExists module. The "printf" symbol is not available on VS 14 without including the <stdio.h> header to get a definition.
| * VS14: Add Visual Studio 14 generator (#14982)Brad King2014-06-253-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Call the generator "Visual Studio 14" without any year because this version of VS does not provide a year in the product name. Copy cmGlobalVisualStudio12Generator to cmGlobalVisualStudio14Generator and update version numbers accordingly. Add the VS14 enumeration value. Teach the platform module Windows-MSVC to set MSVC14 and document the variable. Teach module InstallRequiredSystemLibraries to look for the VS 14 runtime libraries. Teach tests CheckCompilerRelatedVariables, VSExternalInclude, and RunCMake.GeneratorToolset to treat VS 14 as they do VS 10, 11, and 12. Co-Author: Pawel Stopinski <diokhan@go2.pl>
| * Tests/Preprocess: Remove unnecessary VS version testsBrad King2014-06-241-9/+0
| | | | | | | | | | | | Since commit v2.8.12~436^2 (VS 10: Escape ; as %3B in preprocessor definitions, 2013-04-11) the Tests/Preprocessor/CMakeLists.txt file no longer uses the PP_VS1XX values, so stop setting them.
* | Merge topic 'CTestTestTimeout-increase'Brad King2014-06-271-5/+2
|\ \ | | | | | | | | | | | | a73373a8 CTestTestTimeout: increase the timeout for all platforms
| * | CTestTestTimeout: increase the timeout for all platformsRolf Eike Beer2014-06-251-5/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Slow or busy machines not running Cygwin may also fail the 1 second timeout: CMake Error at CTestTestTimeout/test.cmake:38 (message): Log does not exist: .../Tests/CTestTestTimeout/timeout.log http://open.cdash.org/testDetails.php?test=264045338&build=3382733 http://open.cdash.org/testDetails.php?test=263904235&build=3382056
* | | Merge topic 'install-messages'Brad King2014-06-2718-0/+143
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d19b64d6 install(DIRECTORY): Add MESSAGE_NEVER option to avoid output (#13761) c9568de5 install: Add CMAKE_INSTALL_MESSAGE variable (#13761) ec7cf7ea install: Thread message level setting through internal API abebcd23 file(INSTALL): Add undocumented options to control output verbosity 464567a5 file(INSTALL): Report existing DIRECTORY as Up-to-date f701b0b7 file(INSTALL): Do not pre-create DESTINATION for DIRECTORY f0a01962 cmInstallTargetGenerator: Drop default constructor arguments 67815894 Help: Add install() command document section headers
| * | | install(DIRECTORY): Add MESSAGE_NEVER option to avoid output (#13761)Brad King2014-06-246-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Installing large directories, e.g., the output of a doxygen run, prints one line per file resulting in too much noise in the build output. Add an option to the install(DIRECTORY) command to not print anything upon make install. Extend the RunCMake.install test with cases covering MESSAGE_NEVER behavior of the install(DIRECTORY) command. Suggested-by: Stefan Eilemann <Stefan.Eilemann@epfl.ch>
| * | | install: Add CMAKE_INSTALL_MESSAGE variable (#13761)Brad King2014-06-244-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Create a variable to allow users to control which installation messages are printed. In particular, provide a "LAZY" setting that prints "Installing" messages but not "Up-to-date" messages. This is desirable for incremental re-installations. Suggested-by: J Decker <d3ck0r@gmail.com>
| * | | file(INSTALL): Add undocumented options to control output verbosityBrad King2014-06-246-0/+45
| | | | | | | | | | | | | | | | | | | | | | | | Create options "MESSAGE_ALWAYS", "MESSAGE_LAZY", and "MESSAGE_NEVER" to specify whether to print the "Installing" and "Up-to-date" messages. Extend the RunCMake.file test with cases covering these options.
| * | | file(INSTALL): Report existing DIRECTORY as Up-to-dateBrad King2014-06-248-0/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Teach cmFileCopier::InstallDirectory to detect whether the destination directory exists. If so, report it as "Up-to-date" instead of "Installing". This resolves message asymmetry with file installations. Extend the RunCMake.file and RunCMake.install tests to check the installation output on both the first and second run. Suggested-by: J Decker <d3ck0r@gmail.com>
* | | | Merge topic 'refactor-link-internals'Brad King2014-06-254-2/+23
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f5c18c9c cmTarget: Drop GetDirectLinkLibraries methods 281eb3d8 cmTarget: Improve HaveBuildTreeRPATH implementation d912220e cmTarget: Lookup targets in LinkInterface and LinkImplementation edce4351 cmExportFileGenerator: Make SetImportLinkProperty a template 097be413 cmTarget: Add GetUtilityItems to get target ordering dependencies 4dad5fd2 cmTarget: Add cmLinkItem to refer to a target by name and pointer a2723442 Fix scope of transitive target name lookups 069d60fe cmTarget: Add method to lookup other targets in a target's scope 47ab3ca6 cmTarget: Constify GetLinkImplementationClosure results 9f3ed029 cmTarget: Constify GetTransitivePropertyTargets results 6f0951af cmTarget: Drop 'head' target from GetImportInfo 0dc9e88d cmTarget: Remove 'head' argument from GetLinkImplementation 4ac72455 cmTarget: Drop 'head' argument from GetLinkClosure bcdb7ff9 cmTarget: Remove 'head' argument from GetLinkerLanguage bd9b667b cmComputeLinkInformation: Remove 'head' argument 06328dd5 cmTarget: Remove 'head' argument from GetLinkInformation ...
| * | | Fix scope of transitive target name lookupsBrad King2014-06-234-2/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In cmTarget, cmGeneratorTarget, and cmGeneratorExpressionEvaluator, fix target name lookups to occur in the cmMakefile context of the target that referenced the name, not the current 'head' target. The context matters for imported targets because they are directory-scoped instead of globally unique. We already do this in cmComputeLinkDepends and cmComputeTargetDepends. Extend the InterfaceLibrary test with an example covering this behavior.
* | | | Update CDash server URLBrad King2014-06-2420-40/+40
| | | | | | | | | | | | | | | | It is now at open.cdash.org and does not start in "/CDash".
* | | | Tests: Fix CMAKE_TESTS_CDASH_SERVER parsingBrad King2014-06-241-1/+1
| |_|/ |/| | | | | | | | | | | Allow the value to end without a slash and have an empty server path component. This is needed to match "http://open.cdash.org" correctly.
* | | cmake: Add '-E env' command-line toolBrad King2014-06-2311-0/+24
| |/ |/| | | | | | | | | | | | | | | | | | | | | | | Extend the cmake command-line interface to support cmake -E env [--unset=NAME]... [NAME=VALUE]... COMMAND [ARG]... This will be useful to run processes with modified environments without using a shell or a full "cmake -P" script to wrap it. Extend the RunCMake.CommandLine test to cover success and failure cases. Inspired-by: Jonathan Bohren <jbo@jhu.edu>
* | Merge topic 'vs-subdir-sln-depends'Brad King2014-06-163-5/+15
|\ \ | | | | | | | | | | | | | | | | | | cb67509b VS: Remove unused parameter of WriteTargetConfigurations 790e1677 VS: Fix subproject .sln dependencies on custom targets 5fba44cf VS: Move VS-only API out of cmGlobalGenerator
| * | VS: Fix subproject .sln dependencies on custom targetsBrad King2014-06-123-5/+15
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Each project listed in a .sln must be marked (or not) as part of the "default build" for each configuration. For targets created by the add_custom_target() command we add them to the default build if they are not excluded in some way or if another target depends on them. In the top-level .sln, a custom target is excluded if it is not created with the ALL option to add_custom_target. In subdirectory .sln files, a target may also be excluded if it is not within the directory and is brought into the solution only due to a dependency from another target in the solution. Fix the "IsPartOfDefaultBuild" and "IsDependedOn" methods to check every target to be included in the .sln for a dependency on the custom target. Otherwise transitive dependencies through targets not in the current subdirectory will not be considered. Extend the SubProject test with a custom target to cover this case. Reported-by: William Deurwaarder <William.Deurwaarder@tomtom.com> Reported-by: Dirk Steenpass <dirk.steenpass@gmail.com>
* | Merge topic 'add_jacoco_coverage_parsing'Brad King2014-06-134-0/+77
|\ \ | |/ |/| | | | | 558c2190 CTest: Add Jacoco Coverage functionality
| * CTest: Add Jacoco Coverage functionalityJoseph Snyder2014-06-124-0/+77
| | | | | | | | | | | | | | | | Add the ability to parse the XML output of the Jacoco tool. Jacoco (www.eclemma.org/jacoco) is a Java coverage tool. Add and integrate a class for the parser and include a test which utilizes the new parser.
* | Merge topic 'WriteCompilerDetectionHeader-compiler-versions'Brad King2014-06-103-1/+24
|\ \ | | | | | | | | | | | | | | | | | | | | | ddec418a Features: Add compiler version support to WriteCompilerDetectionHeader. b7029576 Project: Add configurable name for version computation macros. 78acaafe Project: Separate simulated compiler id from version detection. 567af1a5 WCDH: Issue a better message for version compatibility.
| * | Features: Add compiler version support to WriteCompilerDetectionHeader.Stephen Kelly2014-06-092-0/+19
| | |
| * | WCDH: Issue a better message for version compatibility.Stephen Kelly2014-06-051-1/+5
| | |
* | | cmake: Do not open directories as scripts (#14966)Brad King2014-06-093-0/+4
| | | | | | | | | | | | | | | Check if a file path is a directory before opening it. Extend the RunCMake.CommandLine test with a case running "cmake -P" on a directory.
* | | Merge topic 'dev/backtrace-performance'Brad King2014-06-091-2/+2
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 86be733f cmGeneratorExpression: Add workaround for Borland compiler 3495ab0a tests: update unused variable test expected output 2a1b2d84 backtrace: Convert to local paths in IssueMessage a0829205 genex: remove the need for backtraces efc20569 cmake: remove dummy backtraces for IssueMessage d46c650d cmMakefile: return a backtrace
| * | | tests: update unused variable test expected outputBen Boeckel2014-06-051-2/+2
| | |/ | |/| | | | | | | | | | The expected output is now a relative path, not a full path. Update the pass/fail detection accordingly.
* | | Merge topic 'testRST-no-preprocessor-FILE'Brad King2014-06-092-3/+10
|\ \ \ | | | | | | | | | | | | | | | | 218699eb Tests: Fix CMakeLib.testRST for relative __FILE__
| * | | Tests: Fix CMakeLib.testRST for relative __FILE__Brad King2014-06-062-3/+10
| | | | | | | | | | | | | | | | | | | | Pass the test input directory as a runtime argument instead of depending on __FILE__ to locate it.
* | | | Merge topic 'xcode15-fix-RunCMake-TargetSources'Brad King2014-06-093-5/+8
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | 0366ba5d Tests: Fix RunCMake.TargetSources on Xcode 1.5
| * | | | Tests: Fix RunCMake.TargetSources on Xcode 1.5Brad King2014-06-063-5/+8
| |/ / / | | | | | | | | | | | | | | | | | | | | Xcode 1.5 does not support multiple configurations. The generator also adds some sources internally that cause extra OriginDebug output. Update the expected output to tolerate it.
* | | | Merge topic 'fix-ctest-label-regex'Brad King2014-06-093-0/+56
|\ \ \ \ | |/ / / |/| | | | | | | | | | | 887532f0 CTest: Fix combined inclusive/exclusive label regular expressions
| * | | CTest: Fix combined inclusive/exclusive label regular expressionsNils Gladitz2014-06-063-0/+56
| |/ /
* | | tests: allow RelWithDebInfo and MinSizeRel configs to workBen Boeckel2014-06-052-0/+16
|/ /
* | Merge topic 'delay-generator-toolset'Brad King2014-06-0510-1/+61
|\ \ | | | | | | | | | | | | | | | | | | 528e8af1 Allow a toolchain file to specify a generator toolset 98afb454 VS: Split user- and generator-provided PlatformToolset 3e9f6e36 Xcode: Rename internal variable {Platform => Generator}Toolset
| * | Allow a toolchain file to specify a generator toolsetBrad King2014-06-0410-1/+61
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Delay use of CMAKE_GENERATOR_TOOLSET until the CMakeSystem.cmake file has been configured and loaded during the first project() or enable_language() command. This gives the toolchain file named by CMAKE_TOOLCHAIN_FILE a chance to set CMAKE_GENERATOR_TOOLSET. This point is still early enough to set the generator toolset prior to the initialization of any languages that might use the toolset. The cmake::GeneratorToolset member variable remains an indication of what was specified by the -T option or loaded from the cache. It does not need to be updated based on the toolchain file setting. The cmMakefile::TryCompile can still pass cmake::GeneratorToolset into the inner instance because the try-compiled project will do platform and language initialization using the CMakeSystem module configured for the outer project. Extend the RunCMake.GeneratorToolset test with cases that use a toolchain file to set CMAKE_GENERATOR_TOOLSET.