Commit Graph

47343 Commits

Author SHA1 Message Date
Rolf Eike Beer
d6a4e9fbc8 CTest: avoid repeated string compares
Only one key can match per iteration, avoid any further compares when one match
was already found. While at it entirely avoid that the key and value strings are
copied.
2020-03-23 20:18:02 +01:00
Rolf Eike Beer
d1e6ee6fe3 Mumps coverage: directly pass std::string as argument 2020-03-23 19:47:47 +01:00
Rolf Eike Beer
dc21177461 remove pointless return value from cmCTestTestHandler::CleanTestOutput() 2020-03-23 19:47:47 +01:00
Rolf Eike Beer
36bfb80338 PyCoverage: avoid repeated string splitting, especially for uncovered lines 2020-03-23 19:47:47 +01:00
Rolf Eike Beer
0415fa3be7 use std::string::rfind() instead of open coding it
While at it avoid creating a new string.
2020-03-23 19:47:47 +01:00
Rolf Eike Beer
871bf0cc88 CPackWIXGenerator: use cmStrCat for more parts 2020-03-23 19:47:46 +01:00
Rolf Eike Beer
d6cf89c0d4 remove needless check for std::string::substr()
Passing npos is legal and means "rest of the string".
2020-03-23 19:47:46 +01:00
Rolf Eike Beer
a42d2b099a cmcldeps: replace inefficient std::string::substr usage 2020-03-23 19:47:46 +01:00
Rolf Eike Beer
59d572bb4a replace private startsWith() implementation with cmHasPrefix() 2020-03-23 19:47:46 +01:00
Brad King
206a65c3b8 Merge branch 'release-3.17' 2020-03-23 10:54:42 -04:00
Brad King
1d9884fe7d Merge topic 'doc-typo'
356c7cec2c Help: Fixed typo in CMAKE_INSTALL_RPATH_USE_LINK_PATH.rst

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4516
2020-03-23 10:54:42 -04:00
Brad King
c1ad4a74d4 Merge topic 'doc-typo' into release-3.17
356c7cec2c Help: Fixed typo in CMAKE_INSTALL_RPATH_USE_LINK_PATH.rst

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4516
2020-03-23 10:54:41 -04:00
Jaak Ristioja
356c7cec2c Help: Fixed typo in CMAKE_INSTALL_RPATH_USE_LINK_PATH.rst
Signed-off-by: Jaak Ristioja <jaak@ristioja.ee>
2020-03-23 09:46:08 -04:00
Brad King
aef934ff63 Merge branch 'release-3.17' 2020-03-23 09:27:44 -04:00
Brad King
a4abf61520 Merge topic 'cmake-gui-open-check'
ecc0086bfc cmake-gui: Fix use-after-free in Open-possible check

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4508
2020-03-23 09:27:44 -04:00
Brad King
170087f065 Merge topic 'cmake-gui-open-check' into release-3.17
ecc0086bfc cmake-gui: Fix use-after-free in Open-possible check

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4508
2020-03-23 09:27:43 -04:00
Kitware Robot
8638c49f2a CMake Nightly Date Stamp 2020-03-23 00:01:05 -04:00
Kitware Robot
7099db5dd4 CMake Nightly Date Stamp 2020-03-22 00:01:11 -04:00
Kitware Robot
8bef78bb73 CMake Nightly Date Stamp 2020-03-21 00:01:12 -04:00
Francisco Facioni
ecc0086bfc cmake-gui: Fix use-after-free in Open-possible check
Fix `QCMake::checkOpenPossible` to copy `toLocal8Bit().data()` before
its lifetime expires.
2020-03-20 08:38:31 -04:00
Brad King
9c3dddb4f5 Merge branch 'release-3.17' 2020-03-20 07:35:44 -04:00
Brad King
e3185e3d1b CMake 3.17.0 v3.17.0 2020-03-20 06:26:14 -04:00
Brad King
6bea0b2290 Merge branch 'release-3.17' 2020-03-20 06:22:48 -04:00
Brad King
dfca1887b0 Merge topic 'FindMatlab-r2020' into release-3.17
75331a4578 FindMatlab: Add R2020a=9.8

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4507
2020-03-20 06:22:48 -04:00
Brad King
a2bbc34ace Merge topic 'FindMatlab-r2020'
75331a4578 FindMatlab: Add R2020a=9.8

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4507
2020-03-20 06:22:48 -04:00
Brad King
bb22f4588f Merge branch 'release-3.16' 2020-03-20 06:21:11 -04:00
Brad King
3ab89b5475 Merge topic 'GetPrerequisites-vcruntime-is-system' into release-3.17
417b765f5a GetPrerequisites: Classify vcruntime libraries as system

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4506
2020-03-20 06:17:49 -04:00
Brad King
1294cb3485 Merge branch 'release-3.17' 2020-03-20 06:17:49 -04:00
Brad King
7c0346e90a Merge topic 'GetPrerequisites-vcruntime-is-system'
417b765f5a GetPrerequisites: Classify vcruntime libraries as system

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4506
2020-03-20 06:17:49 -04:00
Brad King
6786d7c92e Merge branch 'release-3.17' 2020-03-20 06:17:01 -04:00
Brad King
119d1dadce Merge topic 'export-repeat' into release-3.17
8affe9aa33 export: Fix use-after-free on multiple calls overwriting same FILE

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4494
2020-03-20 06:17:00 -04:00
Brad King
94139ac58e Merge topic 'export-repeat'
8affe9aa33 export: Fix use-after-free on multiple calls overwriting same FILE

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4494
2020-03-20 06:17:00 -04:00
Kitware Robot
9bbea2344b CMake Nightly Date Stamp 2020-03-20 00:01:11 -04:00
Michael Hirsch, Ph.D
75331a4578 FindMatlab: Add R2020a=9.8
This allows Matlab R2020a to be recognized as a valid Matlab version.
2020-03-19 12:47:10 -04:00
Brad King
2a085de535 Merge branch 'GetPrerequisites-vcruntime-is-system' into release-3.16
Merge-request: !4506
2020-03-19 10:19:43 -04:00
Err0rC0deX
417b765f5a GetPrerequisites: Classify vcruntime libraries as system
Previously GetPrerequisites classified `vcruntime*.dll` as type "other".
They should be classified as type "system".
2020-03-19 10:17:40 -04:00
Brad King
60db3af147 Merge topic 'cmprop-state'
bd89133543 cmState::GetCacheEntryValue: return cmProp

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4493
2020-03-19 07:18:27 -04:00
Brad King
7bdf84d2d5 Merge topic 'target-improve'
b915fec56e cmTarget: minor code improvements

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4483
2020-03-19 07:17:39 -04:00
Brad King
e37f67c7f7 Merge topic 'CheckLanguage-private-vars'
36baf1f13c CheckLanguage: hide commonly used variable names

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4497
2020-03-19 07:17:00 -04:00
Brad King
2154d0239f Merge branch 'release-3.17' 2020-03-19 06:57:52 -04:00
Brad King
0586123ede Merge topic 'trace-format-json-doc'
1994f950ff cmake: List valid values for --trace-format on the command line
e39766d84a Help: Fix documentation of --trace-format parameter

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4500
2020-03-19 06:57:52 -04:00
Brad King
8fad32f5b9 Merge topic 'trace-format-json-doc' into release-3.17
1994f950ff cmake: List valid values for --trace-format on the command line
e39766d84a Help: Fix documentation of --trace-format parameter

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4500
2020-03-19 06:57:51 -04:00
Brad King
8affe9aa33 export: Fix use-after-free on multiple calls overwriting same FILE
CMake 3.16 and below allow multiple `export()` calls with the same output
file even without using `APPEND`.  The implementation worked by accident
by leaking memory.  Refactoring in commit 5444a8095d (cmGlobalGenerator:
modernize memrory managemenbt, 2019-12-29, v3.17.0-rc1~239^2) cleaned up
that memory leak and converted it to a use-after-free instead.

The problem is caused by using the `cmGlobalGenerator::BuildExportSets`
map to own `cmExportBuildFileGenerator` instances.  It can own only
one instance per output FILE name at a time, so repeating use of the
same file now frees the old `cmExportBuildFileGenerator` instance
and leaves the pointer in the `cmMakefile::ExportBuildFileGenerators`
vector dangling.  Move ownership of the instances into `cmMakefile`'s
vector since its entries are not replaced on a repeat output FILE.

In future work we should introduce a policy to error out on this case.
For now simply fix the use-after-free to restore CMake <= 3.16 behavior.

Fixes: #20469
2020-03-19 06:41:39 -04:00
Kitware Robot
d995be9ead CMake Nightly Date Stamp 2020-03-19 00:01:09 -04:00
Kyle Edwards
1994f950ff cmake: List valid values for --trace-format on the command line 2020-03-18 16:16:46 -04:00
Kyle Edwards
e39766d84a Help: Fix documentation of --trace-format parameter 2020-03-18 16:02:04 -04:00
Hannes Vogt
36baf1f13c CheckLanguage: hide commonly used variable names
The check_language sets internal variables with a common name in the
caller's scope: `result`, `output` and `content`.
They are now prefixed with `_cl_`,
inspired by the CheckLibraryExists module.
2020-03-18 17:47:06 +01:00
Brad King
863b0fa2ac Merge topic 'FindRuby-updates'
46064c8193 FindRuby: Add support for versions up to 2.7
675eaf3bd0 FindRuby: Update MSVC runtime library selection
b970e25d98 FindRuby: Remove extra whitespace
ecdace4d61 FindRuby: Include FPHSA closer to where it is used
f52f496138 FindRuby: Provide Ruby_LIBRARIES result variable
b00d736a0b FindRuby: Add dedicated tests

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4481
2020-03-18 09:09:18 -04:00
Brad King
d9ad00119d Merge topic 'FindPkgConfig-broken-pkg-config'
1c99f5df28 FindPkgConfig: Add test for specified pkg-config tool missing
b59f36aad8 FindPkgConfig: Unset results when pkg-config is broken

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4451
2020-03-18 09:08:12 -04:00
Brad King
2d3eeffc5d Merge topic 'bootstrap-version-crlf'
2ec6fbcb9b bootstrap: Tolerate trailing content in CMakeVersion.cmake components

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4491
2020-03-18 09:07:24 -04:00