sort by:
Revision Author Date Message Commit Date
f4e4b41 Merge topic 'pch-ios-multi-arch' f593b354da PCH: Add support for multi architecture iOS projects Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4561 03 April 2020, 11:05:11 UTC
88cd06a Merge branch 'release-3.17' 03 April 2020, 10:58:22 UTC
11998c6 Merge topic 'ExternalProject-no-extract-bool' into release-3.17 2c4bb705e8 ExternalProject: allow `DOWNLOAD_NO_EXTRACT OFF` Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4562 03 April 2020, 10:58:22 UTC
e141c9d Merge topic 'ExternalProject-no-extract-bool' 2c4bb705e8 ExternalProject: allow `DOWNLOAD_NO_EXTRACT OFF` Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4562 03 April 2020, 10:58:22 UTC
9e0c279 Merge branch 'release-3.17' 03 April 2020, 10:55:36 UTC
a554827 Merge topic 'rel-linux-openssl' into release-3.17 3a66c7674c Utilities/Release: Update to openssl 1.1.1f Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4563 03 April 2020, 10:55:35 UTC
f0e9778 Merge topic 'rel-linux-openssl' 3a66c7674c Utilities/Release: Update to openssl 1.1.1f Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4563 03 April 2020, 10:55:35 UTC
3a66c76 Utilities/Release: Update to openssl 1.1.1f 03 April 2020, 10:50:56 UTC
b44624e CMake Nightly Date Stamp 03 April 2020, 04:01:11 UTC
f593b35 PCH: Add support for multi architecture iOS projects Fixes: #20497 02 April 2020, 15:51:19 UTC
e95d274 Merge topic 'cmprop-makefile' aba23c747b cmMakefile::GetProperty: return cmProp Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4559 02 April 2020, 15:20:46 UTC
525bd2d Merge topic 'config-case' ff02a592bc cmLocalGenerator: Avoid using upper-case config when not necessary a4b76c237d cmLocalGenerator: Clarify local variable name in GetTargetFlags 25a920e827 cmLocalGenerator: Convert GetStaticLibraryFlags to take original-case config Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4558 02 April 2020, 15:20:05 UTC
a8a0564 Merge topic 'discourage-cmake_install' 0f76839bc7 Help: Discourage direct use of cmake_install.cmake Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4553 02 April 2020, 15:18:22 UTC
e7f58ef Merge topic 'cuda_check' e758331595 cm_cxx_features: Remove CUDA installation warning filtering Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4554 02 April 2020, 15:15:44 UTC
3667366 Merge topic 'update-kwsys' afe8a5eb3f Merge branch 'upstream-KWSys' into update-kwsys 976d29b9bd KWSys 2020-04-01 (25694819) Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4556 02 April 2020, 15:14:46 UTC
11d43a7 Merge branch 'release-3.16' 02 April 2020, 15:13:40 UTC
8386407 Merge branch 'release-3.17' 02 April 2020, 15:12:54 UTC
35d9ca2 Merge topic 'FindPython-fix-VIRTUALENV-eq-FIRST' 81beb28752 FindPython: fix handling when FIND_VIRTUALENV == FIRST Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4557 02 April 2020, 15:12:54 UTC
d26f15d Merge topic 'FindPython-fix-VIRTUALENV-eq-FIRST' into release-3.17 81beb28752 FindPython: fix handling when FIND_VIRTUALENV == FIRST Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4557 02 April 2020, 15:12:54 UTC
2c4bb70 ExternalProject: allow `DOWNLOAD_NO_EXTRACT OFF` Fixes: #20531 02 April 2020, 12:55:04 UTC
af13878 CMake Nightly Date Stamp 02 April 2020, 04:01:11 UTC
0f76839 Help: Discourage direct use of cmake_install.cmake Encourage people to use cmake(1) --install instead. 01 April 2020, 15:39:28 UTC
aba23c7 cmMakefile::GetProperty: return cmProp 01 April 2020, 14:56:34 UTC
ff02a59 cmLocalGenerator: Avoid using upper-case config when not necessary Calls to `GetLinkerLanguage`, `GetSourceFiles`, etc. can accept the original-case config name. 01 April 2020, 14:56:00 UTC
a4b76c2 cmLocalGenerator: Clarify local variable name in GetTargetFlags 01 April 2020, 14:55:59 UTC
25a920e cmLocalGenerator: Convert GetStaticLibraryFlags to take original-case config Move upper-case conversion of the configuration into the implementation. 01 April 2020, 14:55:59 UTC
cfc92b4 Merge topic 'aux-install-dest' 2642f432ef Aux: Install editor and bash files to more natural locations Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4548 01 April 2020, 14:54:44 UTC
f9be127 Merge topic 'relax_compiler_prefix_detection' c5dd2ca538 DetermineCompiler: Relax _CMAKE_TOOLCHAIN_PREFIX detection Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4547 01 April 2020, 14:53:46 UTC
221b046 Merge topic 'cmprop-target' 3eec21a01c cmTarget::GetProperty: return cmProp Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4546 01 April 2020, 14:52:39 UTC
88507b1 Merge branch 'release-3.17' 01 April 2020, 14:43:25 UTC
4e69c9d Merge topic 'cpack-nsis-version' aa78a2537c CPack/NSIS: Document and check requirement of at least NSIS 3.0 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4552 01 April 2020, 14:43:25 UTC
d68794a Merge topic 'cpack-nsis-version' into release-3.17 aa78a2537c CPack/NSIS: Document and check requirement of at least NSIS 3.0 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4552 01 April 2020, 14:43:24 UTC
095cc2d Merge branch 'release-3.17' 01 April 2020, 14:42:19 UTC
85f87c9 Merge topic 'xl-cxx14' 46d9006efa XL: Add comment clarifying why we pretend it has full C++11/14 support 4aaa9ea96c XL: C++14 language level flags are only available on Linux Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4551 01 April 2020, 14:42:19 UTC
9b32801 Merge topic 'xl-cxx14' into release-3.17 46d9006efa XL: Add comment clarifying why we pretend it has full C++11/14 support 4aaa9ea96c XL: C++14 language level flags are only available on Linux Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4551 01 April 2020, 14:42:18 UTC
3f1cd55 Merge branch 'FindPython-fix-VIRTUALENV-eq-FIRST' into release-3.16 Merge-request: !4557 01 April 2020, 14:38:31 UTC
81beb28 FindPython: fix handling when FIND_VIRTUALENV == FIRST Fixes: #20525 01 April 2020, 14:36:46 UTC
afe8a5e Merge branch 'upstream-KWSys' into update-kwsys # By KWSys Upstream * upstream-KWSys: KWSys 2020-04-01 (25694819) 01 April 2020, 14:15:00 UTC
976d29b KWSys 2020-04-01 (25694819) Code extracted from: https://gitlab.kitware.com/utils/kwsys.git at commit 256948196860967904712e0c8b242057d8ea3380 (master). Upstream Shortlog ----------------- Robert Maynard (1): 4b537c59 Tests: Handle that root users on linux can always write to files 01 April 2020, 14:14:59 UTC
e758331 cm_cxx_features: Remove CUDA installation warning filtering This has been fixed in upstream LLVM. No released version contains this issue. https://github.com/llvm/llvm-project/commit/d32170dbd5b0d54436537b6b75beaf44324e0c28 https://github.com/llvm/llvm-project/commit/eb2ba2ea953b5ea73cdbb598f77470bde1c6a011 01 April 2020, 07:34:35 UTC
f30526c CMake Nightly Date Stamp 01 April 2020, 04:01:10 UTC
7c6a025 Merge branch 'release-3.17' 31 March 2020, 16:43:42 UTC
7d3bef7 Merge topic 'docs_macho_prop_tgt' 01b47293ea Help: Fix inaccuracies and omissions in MACHO_* property docs Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Isuru Fernando <isuruf@gmail.com> Merge-request: !4542 31 March 2020, 16:43:41 UTC
8a0d0cb Merge topic 'docs_macho_prop_tgt' into release-3.17 01b47293ea Help: Fix inaccuracies and omissions in MACHO_* property docs Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Isuru Fernando <isuruf@gmail.com> Merge-request: !4542 31 March 2020, 16:43:41 UTC
2642f43 Aux: Install editor and bash files to more natural locations The vim, emacs, and bash support files are not internal CMake resources and so do not belong under `CMAKE_DATA_DIR`. Move them over to proper places under the `CMAKE_XDGDATA_DIR` as we do already for cmake-gui desktop files and `cmake.m4`. Fixes: #20522 31 March 2020, 16:01:40 UTC
aa78a25 CPack/NSIS: Document and check requirement of at least NSIS 3.0 Since commit 9d2816544e (CPack/NSIS: Also preload the "UserInfo.dll" plugin, 2020-01-04, v3.17.0-rc1~204^2) we require NSIS 3.0. Since older versions do not support Windows 8 or above, we can now require at least version 3.0. Fixes: #20514 31 March 2020, 14:57:28 UTC
46d9006 XL: Add comment clarifying why we pretend it has full C++11/14 support Since commit b0f46c48f6 (CompileFeatures: Now able to presume full language level support, 2019-03-06, v3.15.0-rc1~265^2~1) we pretend that the XL compiler has full C++11 and C++14 support so that projects specifying granular features will at least get the corresponding compiler mode. This is a work around for our lack of a full feature check table for this compiler that works in common cases. Add a comment explaining this. Issue: #20521 31 March 2020, 14:35:56 UTC
4aaa9ea XL: C++14 language level flags are only available on Linux Since commit 458ea9d76c (XL: Add C++14 language level flags, 2019-04-15, v3.15.0-rc1~226^2) we use `-qlanglvl=extended1y` for C++14 with XL 16.1. However, that flag is only supported on a Linux host. Issue: #20521 31 March 2020, 14:35:56 UTC
529d729 Merge topic 'GoogleTest-DISCOVERY_MODE-note' 398a2bddf3 Help: Add release note for GoogleTest module DISCOVERY_MODE feature 2361f4efe1 Help: Update GoogleTest XML_OUTPUT_DIR release note markup Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4550 31 March 2020, 13:25:09 UTC
0f66cb6 Merge topic 'FindBoost-lib-prefix-override' ff71612d02 FindBoost: Allow Boost_LIB_PREFIX to be set externally Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4531 31 March 2020, 13:23:13 UTC
1fa4baf Merge branch 'release-3.16' 31 March 2020, 13:20:17 UTC
8c78028 Merge branch 'release-3.17' 31 March 2020, 13:19:43 UTC
16053df Merge topic 'link-libs-config-case' 2af18704fd Merge branch 'backport-3.16-link-libs-config-case' 3f976bf201 target_link_libraries: Fix regression in case of $<CONFIG> genex 5a95b5e091 target_link_libraries: Fix regression in case of $<CONFIG> genex Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4544 31 March 2020, 13:19:42 UTC
69c8bf6 Merge topic 'link-libs-config-case' into release-3.17 2af18704fd Merge branch 'backport-3.16-link-libs-config-case' 3f976bf201 target_link_libraries: Fix regression in case of $<CONFIG> genex 5a95b5e091 target_link_libraries: Fix regression in case of $<CONFIG> genex Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4544 31 March 2020, 13:19:42 UTC
34108b4 Merge branch 'release-3.17' 31 March 2020, 13:17:54 UTC
20819b1 Merge topic 'aix-ExportImportList-install' 39e5a4da22 AIX: Install ExportImportList script with execute permission Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4545 31 March 2020, 13:17:53 UTC
76f08a1 Merge topic 'aix-ExportImportList-install' into release-3.17 39e5a4da22 AIX: Install ExportImportList script with execute permission Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4545 31 March 2020, 13:17:53 UTC
398a2bd Help: Add release note for GoogleTest module DISCOVERY_MODE feature This feature was added by commit 75e82a13db (GoogleTest: Add new DISCOVERY_MODE option to gtest_discover_tests, 2020-03-16) but a release note was accidentally left out. Add one now. 31 March 2020, 11:18:14 UTC
2361f4e Help: Update GoogleTest XML_OUTPUT_DIR release note markup 31 March 2020, 11:17:54 UTC
01b4729 Help: Fix inaccuracies and omissions in MACHO_* property docs The VERSION and SOVERSION properties are not true fallbacks for the MACHO_* properties since the MACHO_* properties only affect the embedded version information, but VERSION and SOVERSION also affect other things. 31 March 2020, 09:08:29 UTC
be154ea CMake Nightly Date Stamp 31 March 2020, 04:01:10 UTC
c5dd2ca DetermineCompiler: Relax _CMAKE_TOOLCHAIN_PREFIX detection Now detect _CMAKE_TOOLCHAIN_PREFIX whenever a compilers name matches the heuristics, instead of only doing it when cross compiling 30 March 2020, 21:08:01 UTC
3eec21a cmTarget::GetProperty: return cmProp 30 March 2020, 19:00:14 UTC
888b8a4 Merge topic 'cmprop-state' a4255ecf81 cmStateDirectory::GetProperty: return cmProp Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4536 30 March 2020, 17:30:48 UTC
615950d Merge topic 'cuda_support_bin_util_overrides' 79b6e928c3 CUDA: Support compiler specific FindBinUtils overrides Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Axel Huebl <axel.huebl@plasma.ninja> Merge-request: !4539 30 March 2020, 17:29:36 UTC
ad22d0c Merge topic 'vs-non-built-file-item-metadata' 0723e04f7a VS: Add documentation for VS_SETTINGS and VS_SOURCE_SETTINGS_<tool>. 2ca1102f83 VS: Test VS_SETTINGS and VS_SOURCE_SETTINGS_<tool> properties. f00e1b816d VS: Add VS_SOURCE_SETTINGS_<tool> target property 2ce42f281f VS: Add VS_SETTINGS source file property 53116d3942 VS: Use unordered_map to write HLSL settings. Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4498 30 March 2020, 17:28:19 UTC
cfa3a23 Merge topic 'gtest_discover_tests_cross_compile_support' 3b4838b57f GoogleTest: Add tests for MultiConfig discovery in PRE_TEST mode 1ba4cb565e GoogleTest: Parameterize tests to check PRE_TEST/POST_BUILD discovery mode 75e82a13db GoogleTest: Add new DISCOVERY_MODE option to gtest_discover_tests 889a7146ff GoogleTestAddTests: Refactor into callable method Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4078 30 March 2020, 17:26:49 UTC
e20146b Merge topic 'FindBoost-lib-prefix-clarify' 040f503d83 FindBoost: Clarify logic selecting Boost_LIB_PREFIX Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4537 30 March 2020, 17:24:38 UTC
026083f Merge branch 'release-3.17' 30 March 2020, 17:23:19 UTC
0055170 Merge topic 'docs-xcode-gen-scheme-workdir' 6905451e11 Help: Add missing XCODE_SCHEME_WORKING_DIRECTORY 6ff07dac76 Help: Minor typos and formatting for XCODE_SCHEME_WORKING_DIRECTORY Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4543 30 March 2020, 17:23:19 UTC
04d8ed6 Merge topic 'docs-xcode-gen-scheme-workdir' into release-3.17 6905451e11 Help: Add missing XCODE_SCHEME_WORKING_DIRECTORY 6ff07dac76 Help: Minor typos and formatting for XCODE_SCHEME_WORKING_DIRECTORY Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4543 30 March 2020, 17:23:18 UTC
04c7f8f Merge branch 'release-3.17' 30 March 2020, 17:22:02 UTC
0188df9 Merge topic 'llvm_rc_pp' 4bef0e6450 llvm-rc: Enable preprocessing if CMAKE_RC_COMPILER_INIT is an absolute path Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4535 30 March 2020, 17:22:02 UTC
42cefc6 Merge topic 'llvm_rc_pp' into release-3.17 4bef0e6450 llvm-rc: Enable preprocessing if CMAKE_RC_COMPILER_INIT is an absolute path Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4535 30 March 2020, 17:22:02 UTC
9fce979 Merge branch 'backport-3.16-link-libs-config-case' into release-3.16 Merge-request: !4544 30 March 2020, 15:49:13 UTC
933d069 Merge branch 'aix-ExportImportList-install' into release-3.16 Merge-request: !4545 30 March 2020, 15:48:55 UTC
39e5a4d AIX: Install ExportImportList script with execute permission This script was added by commit 0f150b69d3 (AIX: Explicitly compute shared object exports for both XL and GNU, 2019-07-11, v3.16.0-rc1~418^2~2) but does not have a `.sh` extension so our existing install rules neglect to give it execute permission. Our test suite works on AIX in the build tree but the script is broken without execute permission on installation. Fixes: #20520 30 March 2020, 15:43:08 UTC
2af1870 Merge branch 'backport-3.16-link-libs-config-case' 30 March 2020, 15:34:39 UTC
3f976bf target_link_libraries: Fix regression in case of $<CONFIG> genex Since commit b8626261e9 (Precompile headers: Add methods to generate PCH sources, 2019-07-13, v3.16.0-rc1~182^2~4) we look up source files for a target using an upper-case configuration even though an original-case name is sufficient. Since commit 36ded610af (PCH: Generate sources during Compute step, 2019-10-05, v3.16.0-rc1~2^2) the source file lookup is the first time we compute many on-demand structures that depend on the configuration name. This caused the `$<CONFIG>` generator expression to evaluate to the upper-case configuration name in some cases where we used original-case before. Fix this by switching the source file lookup to the original-case config name. Add a test covering the symptom that led to the discovery of this problem. Fixes: #20517 30 March 2020, 15:33:55 UTC
5a95b5e target_link_libraries: Fix regression in case of $<CONFIG> genex Since commit b8626261e9 (Precompile headers: Add methods to generate PCH sources, 2019-07-13, v3.16.0-rc1~182^2~4) we look up source files for a target using an upper-case configuration even though an original-case name is sufficient. Since commit 36ded610af (PCH: Generate sources during Compute step, 2019-10-05, v3.16.0-rc1~2^2) the source file lookup is the first time we compute many on-demand structures that depend on the configuration name. This caused the `$<CONFIG>` generator expression to evaluate to the upper-case configuration name in some cases where we used original-case before. Fix this by switching the source file lookup to the original-case config name. Add a test covering the symptom that led to the discovery of this problem. Fixes: #20517 30 March 2020, 15:24:27 UTC
3c48f4b Merge topic 'FindPython-use-sysconfig-package' dd0664415a FindPython: use 'sysconfig' as alternate to 'distutils.sysconfig' Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4540 30 March 2020, 13:42:35 UTC
887eb6b CMake Nightly Date Stamp 30 March 2020, 04:01:13 UTC
6905451 Help: Add missing XCODE_SCHEME_WORKING_DIRECTORY 29 March 2020, 11:13:56 UTC
6ff07da Help: Minor typos and formatting for XCODE_SCHEME_WORKING_DIRECTORY 29 March 2020, 11:13:56 UTC
371727c CMake Nightly Date Stamp 29 March 2020, 04:01:22 UTC
dd06644 FindPython: use 'sysconfig' as alternate to 'distutils.sysconfig' To support any python installation, if package 'distutils.sysconfig' is not available, try to use package 'sysconfig'. Fixes: #20502 28 March 2020, 09:51:47 UTC
67e2fef Merge branch 'release-3.17' 28 March 2020, 07:05:11 UTC
655b52a Merge topic 'ninja-multi-doc-variable-update' c8fd26eb57 Help: Move Ninja Multi-Config variable details into their respective pages Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4532 28 March 2020, 07:05:10 UTC
e5eb410 Merge topic 'ninja-multi-doc-variable-update' into release-3.17 c8fd26eb57 Help: Move Ninja Multi-Config variable details into their respective pages Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4532 28 March 2020, 07:05:10 UTC
cc86c92 CMake Nightly Date Stamp 28 March 2020, 04:01:13 UTC
79b6e92 CUDA: Support compiler specific FindBinUtils overrides 27 March 2020, 16:58:01 UTC
a4255ec cmStateDirectory::GetProperty: return cmProp 27 March 2020, 16:33:04 UTC
0723e04 VS: Add documentation for VS_SETTINGS and VS_SOURCE_SETTINGS_<tool>. 27 March 2020, 16:01:21 UTC
3b4838b GoogleTest: Add tests for MultiConfig discovery in PRE_TEST mode PRE_TEST makes it possible to properly distinguish between test cases that exist only in certain configurations. In the new test scenario, debug tests are disabled in release builds, and release tests are disabled in debug builds when a multi config generator is used. Note, this is a bit of a hack and *only* works for PRE_TEST mode. POST_BUILD makes no attempt to get this right. It preserves the status quo and you obtain the tests that were last discovered. See further discussion in !4078 Ideally, the POST_BUILD behavior could be fixed by using generator expressions in OUTPUT and BYPRODUCT expressions. Then you could do something like: set(ctest_include_file "${ctest_file_base}_include-$<CONFIG>.cmake") set(ctest_tests_file "${ctest_file_base}_tests-$<CONFIG>.cmake") Once #12877 lands, maybe this can be revisited. Co-authored-by: Ryan Thornton <ThorntonRyan@JohnDeere.com> Co-authored-by: Kevin Puetz <PuetzKevinA@JohnDeere.com> 27 March 2020, 14:40:40 UTC
1ba4cb5 GoogleTest: Parameterize tests to check PRE_TEST/POST_BUILD discovery mode Now, the unit tests are ran twice -- once with POST_BUILD (i.e. default mode) and again with PRE_TEST (i.e. new discovery mode). Both modes of setting gtest discovery mode are also tested: 1. Using the global override (i.e. CMAKE_GTEST_DISCOVER_TESTS_DISCOVERY_MODE) 2. Explicitly passing DISCOVERY_MODE in calls to gtest_discover_tests (in GoogleTestDiscoveryTimeout.cmake) The goal is to show that the new PRE_TEST discovery mode does not break existing behavior (i.e. should not break POST_BUILD mode) and should also pass the same tests in the same way. A few non trivial implementation details worth noting: 1. Refactoring discovery_timeout_test into own project Originally, I tried doing: ``` run_GoogleTest(POST_BUILD) run_GoogleTest(PRE_TEST) ``` Without changing the internal structure of run_GoogleTest. But since discovery_timeout_test is part of the same project as the other tests, and CTest include files always get evaluated and that's where test discovery occurs, this means every other test now notices the timeout problem when running in PRE_TEST mode. As a result, keeping the existing test structure meant that each existing test (and any new test) would need to have its own PRE_TEST / POST_BUILD variant for stderr and stdout in order to handle the case where discovery_timeout_test timed out. This exponential increase in test output files introduced unnecessary complexity and made it more cumbersome to work on test cases. Why should an unrelated test case care about discovery_timeout_test? So, to fix that issue, the tests were broken apart into two main groups: 1. run_GoogleTest_discovery_timeout (the test dealing with discovery_timeout_test) 2. run_GoogleTest (everything else) This isolates the PRE_TEST / POST_BUILD timeout variants to a single test case. And the other test cases remain unchanged -- further driving home the point that DISCOVERY_MODE shouldn't change existing behavior. 2. Different number of PRE_TEST / POST_BUILD file variants On the PRE_TEST path, different build systems / compilers (i.e. MSBuild and ninja/gcc) produces different build output when building discovery_timeout_test, but we don't actually care what it is, just as long as it builds successfully. This the fundamental difference in behavior between POST_BUILD (which would have failed) and PRE_TEST (which doesn't) and is the reason why we don't need a GoogleTest-discovery-build-result.txt or GoogleTest-discovery-build-stdout.txt 3. Fix flaky discovery timeout test The test expects to see: > Output: > timeout > case. But sometimes, the test would only produce: > Output: > timout In certain environments, specifically when built with OpenWatcom 1.4, and while the build server was under heavy load (i.e. running many tests in parallel), std::endl behaves inconsistently and doesn't completely flush std::cout when the program is terminated due to timeout. This results in inconsistent test failures because the actual output doesn't fully match what's expected. At first we tried adding an additional: std::cout << std::flush That didn't work. But using C-style printf() and fflush() appears to do the trick: > This time I managed to get on the machine while it was still busy doing other nightly builds > and could reproduce the problem reliably. With that I was finally able to find a fix. > It turns out my earlier hypothesis that C++ stream flushing was not working on the old compiler was correct, > but even .flush() is not enough. > I changed it to use C-style printf() and fflush() and now the test passes on that build. > -- Brad King <brad.king@kitware.com> Co-authored-by: Ryan Thornton <ThorntonRyan@JohnDeere.com> Co-authored-by: Kevin Puetz <PuetzKevinA@JohnDeere.com> 27 March 2020, 14:39:47 UTC
ff71612 FindBoost: Allow Boost_LIB_PREFIX to be set externally On platforms where our default Boost static library prefix is incorrect, make it possible for users to set it explicitly to work around the problem until FindBoost can be updated. Fixes: #20372 27 March 2020, 13:48:22 UTC
040f503 FindBoost: Clarify logic selecting Boost_LIB_PREFIX Also add a comment explaining its purpose. 27 March 2020, 13:32:47 UTC
4bef0e6 llvm-rc: Enable preprocessing if CMAKE_RC_COMPILER_INIT is an absolute path `CMAKE_RC_COMPILER_INIT` and `CMAKE_RC_COMPILER` can be set by user, for example `llvm-rc-10` and `D:\LLVM\bin\llvm-rc.exe`. 27 March 2020, 12:54:58 UTC
f670435 Merge topic 'pch-warn-invalid' 2ce08e5489 PCH: add an option to disable `-Winvalid-pch` Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4499 27 March 2020, 12:03:30 UTC
cc1d5a4 Merge topic 'doc-cmake-package-targets' e6344586ee install: Document caveat when EXPORT name matches package name Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4527 27 March 2020, 11:58:39 UTC
back to top