summaryrefslogtreecommitdiffstats
path: root/Tests
Commit message (Collapse)AuthorAgeFilesLines
* CMP0037: Extend policy to reserved names and custom targetsNils Gladitz2013-11-1916-40/+161
| | | | | | | | Teach add_custom_target to check the policy too. Extend the policy to disallow reserved target names that we use for builtin targets like "all". Extend the RunCMake.CMP0037 test to cover these cases.
* Merge topic 'set_emptyvar_PARENT_SCOPE'Brad King2013-11-145-0/+41
|\ | | | | | | | | | | | | bf755c7 set: Add unit tests for set/unset PARENT_SCOPE bc280f1 set: Fix handling of empty value with PARENT_SCOPE 20afbd5 set: Handle value-less PARENT_SCOPE explicitly
| * set: Add unit tests for set/unset PARENT_SCOPEDaniele E. Domenichelli2013-11-135-0/+41
| | | | | | | | | | Create a RunCMake.set test to cover set() command cases, starting with PARENT_SCOPE.
* | Merge topic 'configure_file-drop-IMMEDIATE'Brad King2013-11-149-16/+16
|\ \ | | | | | | | | | | | | 15610bb Drop use of configure_file IMMEDIATE option
| * | Drop use of configure_file IMMEDIATE optionDaniele E. Domenichelli2013-11-139-16/+16
| |/ | | | | | | | | | | Since commit 7d47c693 (Drop compatibility with CMake < 2.4, 2013-10-08) we no longer need to use the configure_file IMMEDIATE option to support compatibility modes less than 2.0.
* | ExternalData: Allow local stores without any URL templatesBrad King2013-11-138-1/+49
| | | | | | | | | | | | | | | | | | Allow ExternalData_URL_TEMPLATES to be empty if a value for ExternalData_OBJECT_STORES is provided. Assume in this use case that the object stores will already contain all needed objects. Extend the Module.ExternalData test to cover this case (all objects in stores). Extend the RunCMake.ExternalData test to cover the non-failure message case when stores are provided without URL templates.
* | Merge topic 'cmake-copyright-year'Brad King2013-11-132-0/+25
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | 3bade75 Help: Parse Copyright.txt instead of using current year 2bbf6bd Copyright.txt: Add test to check year range 3ee67d0 Copyright.txt: Update year range to end in 2013 621ba1f cmake-gui: Parse Copyright.txt instead of duplicating notice 993b685 bootstrap: Parse Copyright.txt instead of duplicating notice
| * | Copyright.txt: Add test to check year rangeBrad King2013-11-122-0/+25
| |/ | | | | | | | | | | Add a CMake.Copyright test that, when the CMake version number knows the year (as it does in development versions), checks that Copyright.txt has been updated with the current version year.
* | Merge topic 'policy-summary-periods'Brad King2013-11-132-2/+2
|\ \ | | | | | | | | | | | | | | | 49cbca6 CMP0038: Add missing '.' to policy summary line 7390002 CMP0039: Add missing '.' to policy summary line
| * | CMP0039: Add missing '.' to policy summary lineDaniele E. Domenichelli2013-11-122-2/+2
| | |
* | | Merge topic 'fix-INTERFACE-with-no-SHARED-libs'Brad King2013-11-133-0/+7
|\ \ \ | |_|/ |/| | | | | | | | 64f73b0 add_library: Fix INTERFACE on platforms with no shared libs (#14561)
| * | add_library: Fix INTERFACE on platforms with no shared libs (#14561)Stephen Kelly2013-11-123-0/+7
| |/
* | Merge topic 'test-RunCMake.CMP0037-everywhere'Brad King2013-11-1219-92/+99
|\ \ | |/ |/| | | | | 8c6c1f1 Enable RunCMake.CMP0037 test everywhere
| * Enable RunCMake.CMP0037 test everywhereBrad King2013-11-1119-92/+99
| | | | | | | | | | | | | | | | | | | | | | Split the test cases covering spaces and colons into separate units. Run the space cases everywhere. Disable the colon cases where they are known to fail. This approach increases platform coverage for the test and makes the known-failure logic as local as possible. No Makefile generator on Windows can generate targets with ':' in their name because the CMakeFiles/<target>.dir directory cannot be created. Skip this part of the test on all Windows Make tools.
* | Merge topic 'test-LINK_ONLY-expression'Brad King2013-11-084-5/+17
|\ \ | | | | | | | | | | | | 53b10fd Genex: Add a test for the LINK_ONLY expression.
| * | Genex: Add a test for the LINK_ONLY expression.Stephen Kelly2013-11-064-5/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 239b0c6b (Don't add invalid content to static lib INTERFACE_LINK_LIBRARIES., 2013-10-20) extended a test which excercised the logic of the LINK_ONLY generator expression. Commit ef10b87c (CMP0022: Plain target_link_libraries must populate link interface, 2013-11-02) removed the instance of LINK_ONLY which was excercised by that test. Add a new test which excercises the other instance of LINK_ONLY by setting the CMP0022 policy to NEW and consuming the contents of the INTERFACE_LINK_LIBRARIES target property.
* | | Merge topic 'tll-target-policies'Brad King2013-11-0836-0/+216
|\ \ \ | | |/ | |/| | | | | | | | | | | | | 596b2a8 Disallow linking to utility targets (#13902). 301bb5c Disallow link-to-self (#13947). 05f5fde Disallow invalid target names (#13140)
| * | Disallow linking to utility targets (#13902).Stephen Kelly2013-11-0712-0/+51
| | |
| * | Disallow link-to-self (#13947).Stephen Kelly2013-11-0713-0/+44
| | |
| * | Disallow invalid target names (#13140)Stephen Kelly2013-11-0713-0/+121
| |/ | | | | | | | | Exclude Borland and NMake from the CMP0037 test. They do not accept the colon in a target name.
* | CFBundle test: Add isysroot argument when calling Rez.Clinton Stimpson2013-11-061-1/+7
|/
* Merge topic 'fix-automoc-compile-definitions'Brad King2013-11-051-1/+4
|\ | | | | | | | | a1b9465 Automoc: Add directory-level COMPILE_DEFINITIONS to command line (#14535)
| * Automoc: Add directory-level COMPILE_DEFINITIONS to command line (#14535)Stephen Kelly2013-11-051-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit 18412153 (Refactor cmTarget::GetCompileDefinitions..., 2013-06-06) cmQtAutomoc was refactored to get all compile definitions from the target instead of separately asking the target and querying the directory-level COMPILE_DEFINITIONS property value. While the generation process does integrate directory-level COMPILE_DEFINITIONS into the target definitions, this did not happen until after Automoc targets are constructed. Therefore the commit regressed use of directory-level definitions in Automoc targets. Factor the definition finalization logic out from the cmGlobalGenerator::CreateGeneratorTargets method into a new cmGlobalGenerator::FinalizeTargetCompileDefinitions method and call it before constructing Automoc targets. This will place the directory-level definitions into the target in time to use them for the Automoc targets. Extend the QtAutomoc test to cover this case.
* | Merge topic 'test-Assembler-no-g'Brad King2013-11-051-0/+3
|\ \ | | | | | | | | | | | | f60797f Tests/Assembler: Drop -g when generating sample assembly source
| * | Tests/Assembler: Drop -g when generating sample assembly sourceBrad King2013-11-011-0/+3
| | | | | | | | | | | | | | | | | | Some compilers, such as Clang on OS X, do not want the -g flag for both generating assembly code and assembling it. Drop the -g flag from generation of main.s in the Assembler test.
* | | Merge topic 'policy-CMP0022-fixes-for-master'Brad King2013-11-0419-12/+106
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b51696f CMP0022: Update target_link_libraries plain signature documentation 25b7f87 Merge branch 'policy-CMP0022-fixes' into policy-CMP0022-fixes-for-master 0a561a0 CMP0022: Warn about a given target at most once 23d21b7 Do not export INTERFACE_LINK_LIBRARIES from non-linkable targets ef10b87 CMP0022: Plain target_link_libraries must populate link interface 0e06788 CMP0022: Add test for target_link_libraries plain signature c0f4a61 CMP0022: Add unit test for null pointer check and message. 4b0cfa7 Merge branch 'output-CMP0022-entries' into policy-CMP0022-fixes
| * \ \ Merge branch 'policy-CMP0022-fixes' into policy-CMP0022-fixes-for-masterBrad King2013-11-0319-12/+106
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Resolve conflict in Source/cmTarget.cxx by integrating the changes to the internal copy constructor from both sides. Also resolve a logical conflict by dropping the special case for INTERFACE_LIBRARY targets. Since cmTarget::SetMakefile already forces CMP0022 to NEW for such targets we need no special handling. Resolve conflict in Source/cmTargetLinkLibrariesCommand.h by dropping the documentation change. We will make the same change in the new location of the same documentation in a separate commit. Resolve conflicts in Tests/RunCMake/CMP0022/CMP0022-WARN-empty-old-stderr.txt Tests/RunCMake/CMP0022/RunCMakeTest.cmake by taking the side from the 'policy-CMP0022-fixes' branch.
| | * | | CMP0022: Warn about a given target at most onceBrad King2013-11-036-1/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since cmTarget::ComputeLinkInterface is called separately for each "head" target that links a target, the warning we produce when CMP0022 is not set could be repeated. Add explicit logic to allow the warning to appear at most once. Multiple copies of the warning for the same target are almost always identical and therefore redundant. In the rare case that two copies of the warning are different, the second can appear in a future run after the first is fixed.
| | * | | Do not export INTERFACE_LINK_LIBRARIES from non-linkable targetsBrad King2013-11-023-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When cmExportFileGenerator::SetImportLinkInterface exports the old LINK_INTERFACE_LIBRARIES property values it skips doing so for non-linkable targets because target->GetLinkInterface returns NULL for such targets. Since cmExportFileGenerator::PopulateInterfaceLinkLibrariesProperty looks at the INTERFACE_LINK_LIBRARIES property directly instead of using the computed link interface, teach it to skip exporting the property if target->IsLinkable returns false. Extend the RunCMake.CMP0022 test with a case covering this. Simply export an executable target that links to a library that is not exported.
| | * | | CMP0022: Plain target_link_libraries must populate link interfaceBrad King2013-11-027-11/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The CMP0022 NEW behavior is that the INTERFACE_LINK_LIBRARIES property exactly defines the link interface. The plain target_link_libraries signature says linking is transitive by default, so it should populate the property. Teach the target_link_libraries plain signature to populate the INTERFACE_LINK_LIBRARIES regardless of the CMP0022 setting. Refactor the cmTarget::ComputeLinkInterface checks that warn when the policy is not set to compare the new property to either the explicitly set old link interface properties or the link implementation fallback for all linkable target types, not just static libraries. This fixes a regression in 2.8.12.0 that caused target_link_libraries to not implement transitive linking in the plain signature once the policy CMP0022 is set to NEW.
| | * | | CMP0022: Add test for target_link_libraries plain signatureStephen Kelly2013-11-026-0/+56
| | | | |
| | * | | CMP0022: Add unit test for null pointer check and message.Stephen Kelly2013-11-024-0/+29
| | | | |
| | * | | Merge branch 'output-CMP0022-entries' into policy-CMP0022-fixesBrad King2013-11-021-0/+9
| | |\ \ \
* | | \ \ \ Merge topic 'robust-ctest_empty_binary_directory'Brad King2013-11-042-0/+77
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 35fbc10 CTest: more aggressive implementation of ctest_empty_binary_directory() 9d9f102 Tests: added test for ctest_empty_binary_directory()
| * | | | | | Tests: added test for ctest_empty_binary_directory()Nils Gladitz2013-11-012-0/+77
| | | | | | |
* | | | | | | Merge topic 'cpack-drag-n-drop-rez'Brad King2013-11-042-1/+5
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | 53d6ebb cpack: For DragNDrop generator, add sysroot option when calling Rez. 193029c cpack: For DragNDrop generator, add sysroot option when calling Rez.
| * | | | | | cpack: For DragNDrop generator, add sysroot option when calling Rez.Clinton Stimpson2013-11-012-1/+5
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also adding overwrite option (-ov) in case multiple temporary dmg files are being created. Fixes bug #14536.
* | | | | | Merge topic 'ctest-p4'Brad King2013-11-022-0/+10
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1b54b1d ctest_update: Do not remove the p4 depot name
| * | | | | | ctest_update: Do not remove the p4 depot namePedro Navarro2013-11-012-0/+10
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of removing the depot name, which causes problems when looking at the file change list in CDash, make the Update test remove a given prefix from the files retrieved from Update.xml.
* | | | | | Merge topic 'object-library-no-TARGET_FILE'Brad King2013-11-025-0/+35
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | d960589 Genex: Reject $<TARGET_FILE:...> for object libraries (#14532)
| * | | | | | Genex: Reject $<TARGET_FILE:...> for object libraries (#14532)Brad King2013-11-015-0/+35
| | |_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Teach the cmGeneratorExpressionEvaluator filesystem artifact logic to reject OBJECT_LIBRARY targets since they have no main artifact. Without the explicit rejection evaluation falls through to an internal CMake error message in cmTarget::GetOutputInfo. Extend the RunCMake.GeneratorExpression test to cover these cases.
* | | | | | Merge topic 'object-library-missing-source'Brad King2013-11-024-0/+12
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5a2fc3d Check for OBJECT_LIBRARY source files at start of generation
| * | | | | | Check for OBJECT_LIBRARY source files at start of generationBrad King2013-11-014-0/+12
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Teach cmGlobalGenerator::CheckTargets to include OBJECT_LIBRARY targets in the check for source file existence. Extend the RunCMake.ObjectLibrary test to cover this case.
* | | | | | Merge topic 'doc-rst-note-and-productionlist'Brad King2013-11-022-0/+14
|\ \ \ \ \ \ | |_|_|_|_|/ |/| | | | | | | | | | | | | | | | | 450b515 cmRST: Add support for the note and productionlist directives
| * | | | | cmRST: Add support for the note and productionlist directivesBrad King2013-10-302-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Simply print out the lines as normal paragraph text. Teach the CMakeLib.testRST test to cover this syntax. Update the cmake-developer.7 manual to document support for the directives.
* | | | | | Merge topic 'add-CMAKE_FIND_NO_INSTALL_PREFIX'Brad King2013-11-0110-0/+46
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | fe057ab Allow disabling adding the install prefix to the prefix search path.
| * | | | | | Allow disabling adding the install prefix to the prefix search path.Stephen Kelly2013-10-3110-0/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In certain scenarios, it is preferable to keep a 'dirty' install prefix than to clear it, and to expect that content will not be found there. Add a CMAKE_FIND_NO_INSTALL_PREFIX variable that can be set to disable searching the install prefix.
* | | | | | | Merge topic 'cmake-syntax-recorded-brackets'Brad King2013-11-017-0/+24
|\ \ \ \ \ \ \ | |_|_|_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b54dbeb Test foreach/function/macro handling of bracket arguments ccdf7e0 macro: Do not substitute for placeholders in bracket arguments 999abb9 macro: Add extra indentation to placeholder substitution code
| * | | | | | Test foreach/function/macro handling of bracket argumentsBrad King2013-10-307-0/+24
| | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bracket arguments recorded in command invocations inside foreach, function, and macro blocks should not have any replacements done when the arguments are replayed later. Teach the RunCMake.Syntax test to cover these cases.
* | | | | | Merge topic 'fix-ninja-launcher-errors-from-custom'Brad King2013-10-315-0/+82
|\ \ \ \ \ \ | |/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | 4fcb97e Tests: Add test for CTEST_USE_LAUNCHERS capture of custom commands 05c7042 Ninja: run custom commands through launcher if available