Marc Chevrier
f7d12609f0
Refactoring: use append functions from cmext/algorithm
2019-12-17 10:44:02 +01:00
Brad King
0e0571599f
Merge topic 'ctest-drmemory-support'
...
676befdf52 ctest: add support for memcheck using Dr. Memory
2db0a65f56 cmCTestMemCheckHandler.cxx: minor refactoring
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !4119
2019-12-12 11:54:54 -05:00
Dietmar Scheidl
676befdf52
ctest: add support for memcheck using Dr. Memory
...
Fixes : #19788
2019-12-10 14:42:30 -05:00
Dietmar Scheidl
2db0a65f56
cmCTestMemCheckHandler.cxx: minor refactoring
2019-12-10 14:36:19 -05:00
Julien Jomier
e6f758be6d
ctest: Populate CTEST_CONFIGURATION_TYPE from the -C command line when set
2019-12-09 13:10:59 -05:00
Brad King
3d5227e6b6
Merge topic 'ctest-resource-fixes'
...
a033bafbe0 Help: Clarify how tests are run if no resource spec file is specified
a64ba0235f CTest: Clarify that resource requirements can be split
f9f294f5fa CTest: Add version field to resource spec file
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !4080
2019-11-26 09:12:34 -05:00
Kyle Edwards
f9f294f5fa
CTest: Add version field to resource spec file
...
Fixes : #20007
2019-11-25 11:08:27 -05:00
Brad King
28994115e8
ctest_test: Add option to REPEAT tests
2019-11-07 14:21:18 -05:00
Brad King
42d5d8f425
cmCTestMultiProcessHandler: Hold repeat mode as a member
2019-11-07 14:14:36 -05:00
Brad King
ed65b3e984
CTest: Rename internal APIs for --repeat options
...
Replace use of the term "rerun" with "repeat" to match the public names.
2019-11-07 14:14:28 -05:00
Brad King
016601e5e6
Merge branch 'backport-ctest-resource-groups'
2019-11-05 12:59:16 -05:00
Craig Scott
c544cb6698
CTest: Rename hardware -> resources for source code
2019-11-05 12:08:35 -05:00
Craig Scott
6ce27d3a2e
cmCTestMultiProcessHandler: Rename resource locking functions
...
Renaming these ahead of other refactoring which will use the
previous names. The previous names more accurately reflect their
purpose after this commit anyway (talking about locking and
unlocking rather than allocating and deallocating).
2019-11-05 12:08:35 -05:00
Craig Scott
a7c1e15cc4
CTest: Rename hardware -> resources for CMake variables, command options
...
Only changes the user-visible effects of renaming hardware
allocation to resource allocation. Code changes are the minimum
needed to achieve that.
2019-11-05 12:08:35 -05:00
Brad King
73a40b19ff
CTest: Rename "Processes" lexer to "ResourceGroups"
...
The corresponding test property `PROCESSES` has been renamed to
`RESOURCE_GROUPS`.
2019-11-05 12:08:35 -05:00
Brad King
af9ed543b0
CTest: Rename PROCESSES test property to RESOURCE_GROUPS
...
The `PROCESSES` test property name added for CMake 3.16 is too close to
the existing `PROCESSORS` test property. Furthermore, the property in
principle specifies groups of resources organized in a way that is
meaningful to a particular test. The groups may often correspond to
processes but they could have other meanings. Since the property name
`PROCESSES` has not been in a final 3.16 release yet, simply rename it
to `RESOURCE_GROUPS`.
Fixes : #19914
2019-11-05 12:08:01 -05:00
Brad King
39ac8b4eb5
ctest: Add --repeat-after-timeout option
...
Add an option to re-run tests if they timeout. This will help tolerate
sporadic timeouts on busy machines.
2019-10-29 15:14:36 -04:00
Brad King
80c2c9d14c
ctest: Add --repeat-until-pass option
...
Add an option to re-run tests if they fail. This will help tolerate
sporadic failures.
Issue: #17010
Co-Author: Ben Boeckel <ben.boeckel@kitware.com >
Co-Author: Chuck Atkins <chuck.atkins@kitware.com >
2019-10-29 15:10:12 -04:00
Brad King
0187e52244
cmCTestRunTest: Use inline member initializers
2019-10-29 13:47:23 -04:00
Kyle Edwards
d1f100a415
CTest: Add Json output for PROCESSES property
2019-10-02 09:33:54 -04:00
Kyle Edwards
e34de0691b
CTest: Allocate hardware to tests
2019-10-02 09:33:54 -04:00
Kyle Edwards
aee0964851
CTest: Add bin-packing algorithm
...
This algorithm is used to determine whether or not a test can
execute with the available resources. It uses a recursive largest-
first algorithm to try to place the tests into their respective
slots.
2019-10-02 09:33:54 -04:00
Kyle Edwards
c494b2973a
CTest: Add cmCTestHardwareAllocator class
2019-10-02 09:33:54 -04:00
Kyle Edwards
c8f4806943
CTest: Add parser for hardware spec file
2019-10-02 09:33:54 -04:00
Kyle Edwards
bb4a141059
CTest: Add lexer for PROCESSES property
2019-10-02 09:33:54 -04:00
Kitware Robot
ed98209ddc
Revise include order using clang-format-6.0
...
Run the `clang-format.bash` script to update our C and C++ code to a new
include order `.clang-format`. Use `clang-format` version 6.0.
2019-10-01 12:26:36 -04:00
Kyle Edwards
67e6b55c58
Merge topic 'ctest-argument-parser'
...
0aa8a2ab8b cmCTest*Command: Port to cmArgumentParser
d5a6a13368 cmArgumentParser: Record parsed keywords
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !3835
2019-09-26 09:22:13 -04:00
Marc Chevrier
c688b401d3
cmstd: Modernize CMake system headers
...
Provide a standardized way to handle the C++ "standard" headers
customized to be used with current CMake C++ standard constraints.
Offer under directory `cm` headers which can be used as direct
replacements of the standard ones. For example:
#include <cm/string_view>
can be used safely for CMake development in place of the `<string_view>`
standard header.
Fixes : #19491
2019-09-20 10:01:37 -04:00
Regina Pfeifer
0aa8a2ab8b
cmCTest*Command: Port to cmArgumentParser
2019-09-20 13:27:30 +02:00
Regina Pfeifer
f30523d090
clang-tidy: modernize-deprecated-headers
2019-09-16 10:11:13 -04:00
Brad King
1a1508c8b8
Merge topic 'modernize-use-auto'
...
d25a5a7ec9 clang-tidy: modernize-use-auto
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !3783
2019-09-12 09:15:38 -04:00
Regina Pfeifer
d25a5a7ec9
clang-tidy: modernize-use-auto
...
Set the MinTypeNameLength option to an impossibly high value in order
to limit the diagnostics to iterators. Leave new expressions and cast
expressions for later.
2019-09-10 22:21:41 +02:00
Regina Pfeifer
cd7d736278
cmCTestTestHandler: Port away from cmCommand
2019-09-09 16:32:05 +02:00
Regina Pfeifer
a1ddf2d0ba
clang-tidy: Replace typedef with using
...
Automate the conversion with
perl -i -0pe 's/typedef ([^;]*) ([^ ]+);/using $2 = $1;/g'
then manually fix a few places.
2019-09-04 18:03:01 +02:00
Regina Pfeifer
62e5f72289
clang-tidy: Replace typedef with using
2019-09-03 13:21:26 -04:00
Brad King
de0a2354fc
IWYU: Add missing cstddef includes for size_t and nullptr_t
...
The IWYU tool we use for CI now diagnoses these.
2019-09-03 11:46:52 -04:00
Brad King
1aa0a18c41
cmCTestTestHandler: Re-order includes to follow our convention
2019-09-03 11:46:52 -04:00
Brad King
89479bde94
Merge topic 'pvs-cleanup'
...
7fe3e874d5 cmCPackLog: Fix support for multiple log message tags
74f2c0ea56 cmCTestTestHandler: Remove extra layer of parentheses
7c2767ef3b cmCTestMultiProcessHandler: Explain testRun ownership in comments
303e813438 CTest: Simplify some boolean conditions
51565abe79 cmMessageCommand: Remove extra layer of parentheses
b1cfaf7b91 cmVSSetupHelper: Remove unused SmartBSTR copy operations
3f4c4e7afe cmVSSetupHelper: Fix SmartBSTR copy operations
a8ca5aea94 cmMakefileTargetGenerator: Check for null before using a pointer
...
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: Daniel Pfeifer <daniel@pfeifer-mail.de >
Acked-by: Artalus <artalus-mail@yandex.ru >
Merge-request: !3715
2019-08-26 10:51:11 -04:00
Brad King
37c671570c
Merge topic 'source_sweep_ostringstream_single'
...
3b2b02825d Source sweep: Replace std::ostringstream when used with a single append
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !3726
2019-08-26 10:49:10 -04:00
Brad King
8685d0d291
Merge topic 'source_sweep_cmExpandedList'
...
aaf59120bf Source sweep: Replace cmExpandList with the shorter cmExpandedList
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !3725
2019-08-26 10:47:24 -04:00
Brad King
e7d7cd47ed
Merge topic 'group_not_track'
...
2a71a0390c ctest: rename TRACK to GROUP
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: Zack Galbreath <zack.galbreath@kitware.com >
Merge-request: !3707
2019-08-26 10:34:55 -04:00
Brad King
7d89c5bf77
Merge topic 'warnings_skip_color'
...
2079267959 ctest_build: ignore ANSI color
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !3702
2019-08-26 10:33:08 -04:00
Brad King
74f2c0ea56
cmCTestTestHandler: Remove extra layer of parentheses
...
A condition in `ComputeTestListForRerunFailed` contained an extra layer
of parentheses. Remove them. The condition itself is correct because
an empty list means "all tests" so we want to include the current test.
Issue: #19610
2019-08-26 09:43:46 -04:00
Brad King
7c2767ef3b
cmCTestMultiProcessHandler: Explain testRun ownership in comments
...
The ownership semantics of the 'testRun' variable are subtle and
may fool static analysers. Add comments explaining them for now.
Later some refactoring could be done to clarify the code.
Issue: #19610
2019-08-26 09:43:46 -04:00
Brad King
303e813438
CTest: Simplify some boolean conditions
...
Directly compare two boolean values instead of spelling out accepted
combinations.
Issue: #19610
2019-08-26 09:43:46 -04:00
Sebastian Holtermann
3b2b02825d
Source sweep: Replace std::ostringstream when used with a single append
...
This replaces `std::ostringstream`, when it is written to only once.
If the single written argument was numeric, `std::to_string` is used instead.
Otherwise, the single written argument is used directly instead of the
`std::ostringstream::str()` invocation.
2019-08-23 18:52:33 +02:00
Sebastian Holtermann
aaf59120bf
Source sweep: Replace cmExpandList with the shorter cmExpandedList
...
This replaces the code pattern
```
std::vector<std::string> args;
cmExpandList(valueStr, args, ...)
```
with
```
std::vector<std::string> args = cmExpandedList(valueStr, ...)
```
2019-08-23 17:07:49 +02:00
Brad King
a6b01b7d45
Merge topic 'ctest-json-REQUIRED_FILES'
...
5778880d20 CTest: Fix --show-only=json-v1 output with REQUIRED_FILES property
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !3719
2019-08-23 10:07:32 -04:00
Zack Galbreath
2079267959
ctest_build: ignore ANSI color
...
Ignore ANSI color when scraping logs for errors and warnings
2019-08-22 15:53:42 -04:00
Brad King
5778880d20
CTest: Fix --show-only=json-v1 output with REQUIRED_FILES property
...
Fixes : #19629
2019-08-22 15:07:43 -04:00