summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake
Commit message (Collapse)AuthorAgeFilesLines
* add_library: Restore error on alias of non-global imported targetBrad King2018-05-101-2/+8
| | | | | | | | | | | In commit v3.11.0-rc1~433^2~1 (Add support for IMPORTED GLOBAL targets to be aliased, 2017-09-14) we accidentally dropped the error on calling `add_library` to alias an imported target that is not globally visible. The `add_executable` command's equivalent check was properly updated. Restore the check in `add_library` with the same update. Also fix the test case accordingly. Fixes: #17982
* Merge branch 'backport-fix-explicit-CMakeLists.txt' into release-3.11Brad King2018-04-136-0/+55
|\ | | | | | | Merge-request: !1959
| * Restore support for explicitly referenced CMakeLists.txt sourcesBrad King2018-04-136-0/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit v3.11.0-rc1~467^2 (VS,Xcode: Add CMakeLists.txt sources without mutating targets, 2017-10-18) we do not add `CMakeLists.txt` to target sources but instead generate references to them directly. This broke projects that explicitly specify their `CMakeLists.txt` file as a source file because the explicit entry is no longer consolidated with the generated one. Teach the relevant generators to avoid duplicating `CMakeLists.txt` source references and add test cases. Fixes: #17828
* | Merge branch 'cpack-trace-nullptr' into release-3.11Brad King2018-04-104-0/+13
|\ \ | | | | | | | | | Merge-request: !1950
| * | CPack: Fix crash on invalid generator nameBrad King2018-04-104-0/+13
| |/ | | | | | | | | | | | | | | In commit v3.11.0-rc1~68^2 (CPack: accept --trace and --trace-expand, 2017-12-09) a nullptr dereference was added that occurs when `cpack -G NotAGenerator` is invoked. Add the needed condition. Fixes: #17900
* | Fix crash with --trace-expand --warn-uninitialized togetherR2RT2018-04-093-0/+10
|/ | | | | | | | Some code paths in `ExpandVariablesInString{New,Old}` were not checking the `filename` parameter for a null pointer, but this can happen when using the above flags together. Add the checks and a test case. Fixes: #17896
* Revert "Remove CTestTestfile.cmake when BUILD_TESTING is OFF"Brad King2018-03-264-0/+14
| | | | | | | | | | | | | Revert commit v3.8.0-rc1~305^2 (Remove CTestTestfile.cmake when BUILD_TESTING is OFF, 2016-11-14) again. We reverted it once in commit v3.8.0-rc3~22^2 (Revert "Remove CTestTestfile.cmake when BUILD_TESTING is OFF", 2017-03-06) but it was accidentally restored by commit v3.11.0-rc1~387^2 (server: add "ctestInfo" request to get test info, 2017-10-25), perhaps due to conflict resolution during rebase. We cannot remove `CTestTestfile.cmake` when testing is off because it breaks projects that never enable testing but create their own `CTestTestfile.cmake` manually instead. Revert the change again and add a test case.
* Merge branch 'gtest_discover_tests_timeout' into release-3.11Brad King2018-03-1613-10/+113
|\ | | | | | | Merge-request: !1851
| * GoogleTest: Rename TIMEOUT parameter to avoid clashCraig Scott2018-03-1513-10/+113
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In gtest_discover_tests(), the TIMEOUT keyword was making it impossible to set the TIMEOUT test property via the PROPERTIES keyword. This would be a frequent case, but it doesn't complain and instead silently does something different to what would normally be expected. The TIMEOUT keyword has been renamed to DISCOVERY_TIMEOUT, thereby removing the clash. This is a breaking change. 3.10.1 and 3.10.2 were the only versions that supported the TIMEOUT keyword and uses of it were likely not working as intended. Fixes: #17801
* | ExternalProject: Fix cache generation when last args ends with "-NOTFOUND"Jean-Christophe Fillion-Robin2018-03-124-2/+22
| |
* | Xcode: Generate ZERO_CHECK generator target only onceGregor Jasny2018-02-224-0/+21
| | | | | | | | | | | | | | | | | | | | | | In case CMAKE_XCODE_GENERATE_TOP_LEVEL_PROJECT_ONLY has been enabled generate only the root-level ZERO_CHECK target so targets in subdirectories pick up the root generator target of ZERO_CHECK. For the case that CMAKE_XCODE_GENERATE_TOP_LEVEL_PROJECT_ONLY is not enabled more investigation and a proper and final fix is still needed. Issue: 14297
* | Android.mk: Fix export of static libraries with PRIVATE dependenciesBrad King2018-02-141-1/+1
| | | | | | | | | | | | | | | | The `LINK_ONLY` generator expression is used to represent private dependencies of static libraries in their `INTERFACE_LINK_LIBRARIES` property value. Fix evaluation of generator expressions during export to support the `LINK_ONLY` genex. Extend the RunCMake.AndroidMK test with a case for this.
* | Merge topic 'ctest_start_function_scope'Brad King2018-01-293-1/+12
|\ \ | | | | | | | | | | | | | | | | | | | | | 13347740 Help: add release notes, documentation for CTEST_RUN_CURRENT_SCRIPT behavior 74092d92 cmCTestScriptHandler: Add new field ShouldRunCurrentScript Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1703
| * | cmCTestScriptHandler: Add new field ShouldRunCurrentScriptKyle Edwards2018-01-263-1/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is to avoid scope issues with CTEST_RUN_CURRENT_SCRIPT. If ctest_start() is called within a function scope, the value of CTEST_RUN_CURRENT_SCRIPT that it sets doesn't make it to the global scope. With this change, ctest_start() no longer sets CTEST_RUN_CURRENT_SCRIPT, and instead sets a field directly in cmCTestScriptHandler. The old behavior of CTEST_RUN_CURRENT_SCRIPT has also been kept for projects and tests that rely on setting it.
* | | Tests: Speed up RunCMake.TargetPropertyGeneratorExpressionsBrad King2018-01-2562-241/+135
| | | | | | | | | | | | Consolidate similar test cases.
* | | Tests: Speed up RunCMake.GeneratorExpressionBrad King2018-01-2525-71/+30
|/ / | | | | | | Avoid enabling languages in cases that do not need them.
* | Merge topic 'sourceFile-new-properties'Brad King2018-01-2514-0/+47
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 04483111 sourceFile properties: add property INCLUDE_DIRECTORIES 3073bd1f VisualStudio generators: refactoring 78b1c2e0 sourceFile properties: add property COMPILE_OPTIONS 3f935e69 LocalGenerator: refactoring Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1596
| * | sourceFile properties: add property INCLUDE_DIRECTORIESMarc Chevrier2018-01-2414-0/+47
| | |
* | | Merge topic 'fix-include_regular_expression-subdir'Brad King2018-01-254-0/+9
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 2d64f9f0 include_regular_expression: Fix propagation to subdirectories Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1690
| * | | include_regular_expression: Fix propagation to subdirectoriesBrad King2018-01-244-0/+9
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Refactoring in commit v3.4.0-rc1~321^2 (cmMakefile: Remove special handling of INCLUDE_REGULAR_EXPRESSION, 2015-04-04) accidentally broke propagation of the include regex to subdirectories. Refactoring in commit v3.5.0-rc1~319^2~1 (cmState: Initialize properties immediately, 2015-10-07) moved maintenance of this value from `cmMakefile` to `cmStateSnapshot`. Restore propagation of the `INCLUDE_REGULAR_EXPRESSION` to subdirectories and add a test to cover it. Fixes: #17676
* | | GenerateExportHeader: add release notes, tests for include guard changesKyle Edwards2018-01-2319-14/+46
|/ /
* | Merge topic 'cache-truncate-newlines'Brad King2018-01-197-0/+36
|\ \ | | | | | | | | | | | | | | | | | | | | | c42b377c cmCacheManager: Test and document newline truncation behavior a9c48307 cmCacheManager: Truncate values containing newlines Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1652
| * | cmCacheManager: Test and document newline truncation behaviorKyle Edwards2018-01-157-0/+36
| | |
* | | Merge topic 'extend-compile-language-genex'Brad King2018-01-1616-101/+0
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 506fda1c Genex: Enable COMPILE_LANGUAGE for INCLUDE_DIRECTORIES with VS and Xcode c2f79c98 Genex: Enable COMPILE_LANGUAGE for COMPILE_DEFINITIONS with VS and Xcode 0795d25b cmVisualStudio10TargetGenerator: Factor out include dir computation 1ab4d186 cmLocalVisualStudio7Generator: Clarify variable name of compiled language 07e1a743 cmLocalVisualStudio7Generator: Clarify condition for target that compiles Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1657
| * | | Genex: Enable COMPILE_LANGUAGE for INCLUDE_DIRECTORIES with VS and XcodeBrad King2018-01-128-43/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The set of compile flags used for a target's C and C++ sources is based on the linker language. By default this is always the C++ flags if any C++ sources appear in the target, and otherwise the C flags. Therefore we can define the `COMPILE_LANGUAGE` generator expression in `INCLUDE_DIRECTORIES` to match the selected language. This is not exactly the same as for other generators, but is the best VS and Xcode can do. It is also sufficient for many use cases since the set of include directories for C and C++ is frequently similar but may be distinct from those for other languages like CUDA. Fixes: #17435
| * | | Genex: Enable COMPILE_LANGUAGE for COMPILE_DEFINITIONS with VS and XcodeBrad King2018-01-1211-62/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The set of compile flags used for a target's C and C++ sources is based on the linker language. By default this is always the C++ flags if any C++ sources appear in the target, and otherwise the C flags. Therefore we can define the `COMPILE_LANGUAGE` generator expression in `COMPILE_DEFINITIONS` to match the selected language. This is not exactly the same as for other generators, but is the best VS and Xcode can do. It is also sufficient for many use cases since the set of definitions for C and C++ is frequently similar but may be distinct from those for other languages like CUDA. Issue: #17435
* | | | GNU: Use -fvisibility on AIX when supportedBrad King2018-01-121-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revise the logic from commit v3.7.0-rc1~173^2~2 (GNU: Do not use -fvisibility on AIX or HP-UX, 2016-09-03) to add a version check. The GCC 7 release notes [1] state that visibility support has been added for AIX 7.1 and above. [1] https://gcc.gnu.org/gcc-7/changes.html
* | | | Tests: Remove redundant code from RunCMake.GenerateExportHeader caseBrad King2018-01-122-4/+0
|/ / / | | | | | | | | | | | | Drop extra `add_compiler_export_flags` calls from subdirectories because it is already called in the top-level directory before entering them.
* | | Merge topic 'add_cuda_to_source_regex'Craig Scott2018-01-091-2/+2
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | 81868e6b CUDA: Add cu as default source file extension Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Brad King <brad.king@kitware.com> Merge-request: !1629
| * | CUDA: Add cu as default source file extensionRobert Maynard2018-01-081-2/+2
| | |
* | | Merge topic 'use_generator_is_multi_config'Brad King2018-01-0817-15/+31
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3c413e2a GENERATOR_IS_MULTI_CONFIG: Use for multi-config checks in Modules c267ea1c GENERATOR_IS_MULTI_CONFIG: Use for multi-config checks in Tests Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1627
| * | | GENERATOR_IS_MULTI_CONFIG: Use for multi-config checks in TestsCraig Scott2017-12-2917-15/+31
| | | |
* | | | Merge topic 'execute_process_UTF8_keyword'Brad King2018-01-082-0/+2
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8caec41e execute_process: Allow UTF-8 as a synonym for the UTF8 keyword Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Ben Boeckel <ben.boeckel@kitware.com> Merge-request: !1623
| * | | | execute_process: Allow UTF-8 as a synonym for the UTF8 keywordCraig Scott2017-12-272-0/+2
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | UTF-8 is the proper naming according to the UTF-8 RFC and is also the name used for a similar keyword in the file() command. This commit brings (backward compatible) consistency to the keyword names and allows the standard UTF-8 name to be used with execute_process(). The old UTF8 keyword is still supported.
* | | | Merge topic '17431-iphone-deployment-target'Brad King2018-01-087-0/+88
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4017bf40 Darwin: Emit deployment target that matches the SDK 8f4663ff Xcode: rename embedded SDK query function Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1447
| * | | | Darwin: Emit deployment target that matches the SDKGregor Jasny2017-12-227-0/+88
| |/ / / | | | | | | | | | | | | Closes: #17431
* | | | Various typo fixesLuz Paz2018-01-034-4/+4
|/ / / | | | | | | | | | Some are user-facing. Others are source comments.
* | | FindPkgConfig: Make IMPORTED_TARGET test verify NO...PATH properlyCraig Scott2017-12-161-0/+61
|/ /
* | Genex: Per-source $<COMPILE_LANGUAGE:...> supportMarc Chevrier2017-12-135-0/+27
| | | | | | | | Fixes: #17542
* | Merge topic 'cpack-rpm-check-executable-flags'Brad King2017-12-075-7/+15
|\ \ | | | | | | | | | | | | | | | | | | a2031d3a CPack/RPM: check executable flags for debuginfo packages Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1565
| * | CPack/RPM: check executable flags for debuginfo packagesDomen Vrankar2017-12-065-7/+15
| | | | | | | | | | | | | | | Debuginfo packages can not be created from programs and shared libraries that do not have execute permissions.
* | | Merge topic 'externalproject_download_dir'Brad King2017-12-073-7/+60
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | b8b87489 ExternalProject: Support substituting <DOWNLOAD_DIR> Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1537
| * | | ExternalProject: Support substituting <DOWNLOAD_DIR>Craig Scott2017-12-063-7/+60
| | | |
* | | | Merge topic 'gtest-discovery-timeout'Brad King2017-12-077-0/+53
|\ \ \ \ | |_|/ / |/| | / | | |/ | |/| | | | | | | | | | | | | 935848a8 GoogleTest: Add test for missing test executable 29731d89 GoogleTest: Add timeout to discovery e99e3982 GoogleTest: Improve gtest_discover_tests messages Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1534
| * | GoogleTest: Add test for missing test executableMatthew Woehlke2017-12-063-0/+10
| | | | | | | | | | | | | | | | | | | | | Add a test to verify expected behavior when a test executable on which gtest_discover_tests is invoked was not built. (The test for the newly added timeout conveniently sets up this situation, so this new test was almost trivial to add.)
| * | GoogleTest: Add timeout to discoveryMatthew Woehlke2017-12-065-0/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a TIMEOUT option to gtest_discover_tests. This provides a work-around in case a test goes out to lunch, rather than causing the build to simply hang. (Although this is still a problem with the user's project, hanging the build is not cool, especially in the case of automatically running CI builds. It is much preferred that the build should actively fail in this case, and it is trivially easy for us to implement that.)
* | | Add generator expression support to per-source COMPILE_DEFINITIONSMarc Chevrier2017-12-054-0/+13
| | | | | | | | | | | | | | | | | | This allows users to specify different genex-based compile definitions for each file in a target. Fixes: #17508
* | | Merge topic 'update-cpplint'Brad King2017-12-054-4/+4
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | bfcc2034 Update cpplint support to return 0 and mark warnings for CDash. Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1544
| * | | Update cpplint support to return 0 and mark warnings for CDash.Bill Hoffman2017-12-014-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit makes cpplint act like the other compiler mirroring tools. It will always return 0 even if it reports warnings and will only return non zero if there is a problem running the command. In addition, it will now add some extra text to allow CTest to recognize the warnings and report them correctly to CDash.
* | | | Merge topic 'csharp_project_without_sources'Brad King2017-12-043-0/+13
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8e654a37 VS: Enable generation of CSharp projects without initial .cs files Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1521