Commit Graph

1669 Commits

Author SHA1 Message Date
Adriaan de Groot 44ad3f0b7f ctest: Support multiple -L and -LE options to mean "AND"
Fixes: #21087
2021-03-28 12:04:05 +11:00
vvs31415 12624ebd7e Source: Reduce c_str() usage 2021-03-13 07:36:07 -05:00
Brad King ff55f33c68 Merge topic 'ctest-dashboard-with-modified-files'
33fa015b4a CTest: Restore running dashboard client Test step with modified files

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5791
2021-02-10 07:45:30 -05:00
Brad King 33fa015b4a CTest: Restore running dashboard client Test step with modified files
Since commit 6a6f1d1edd (CTest: exit nonzero after
message(SEND_ERROR|FATAL_ERROR), 2020-04-03, v3.19.0-rc1~260^2), `ctest`
no longer runs tests if there are errors before the full set of tests is
defined.  Such errors were previously treated more like warnings.

The change exposed some cases where we were issuing an error message but
proceeding to run tests anyway.  The above commit downgraded one such
case (missing `DartConfiguration.tcl`) to a warning explicitly in order
to restore its former warning-like semantics.

Downgrade the Update step's diagnostic about modified or conflicting
files to a warning for the same reason.

Fixes: #21783
2021-02-09 11:05:08 -05:00
Ben Boeckel cdfc4e3195 clang-tidy: fix readability-qualified-auto warnings 2021-01-27 08:45:45 -05:00
Ben Boeckel 808b17b120 clang-tidy: fix readability-make-member-function-const warnings 2021-01-27 08:45:45 -05:00
Ben Boeckel 4f396e6528 clang-tidy: fix performance-no-automatic-move warnings 2021-01-27 08:45:44 -05:00
Pawel Dac 54866346de CTest: Save sanitizer output files after test execution
Prior to this change after tests were executed output files
produced by sanitizers were removed. User couldn't check
in detail why test case didn't pass. Output files are
kept without pid in the end.
2021-01-13 22:08:53 +01:00
Brad King 18b1ccfa51 Merge topic 'ctest-progress-output-fixes'
39cdc8afb9 ctest: Make verbose mode override progress behavior
1bcd9b06b9 ctest: Don't treat skipped test as failed tests in progess report

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5663
2021-01-07 08:14:48 -05:00
Oleksandr Koval 209daa20b2 Code style: add missed explicit 'this->'
CMake uses explicit 'this->' style. Using custom clang-tidy check we can
detect and fix places where 'this->' was missed.
2021-01-05 14:32:36 +02:00
Sylvain Joubert 1bcd9b06b9 ctest: Don't treat skipped test as failed tests in progess report
Skipped tests should not stand out on their own lines
Fixes #21143
2021-01-05 10:32:33 +01:00
Vitaly Stakhovsky 4d9b1b42bc cmCTestBuildCommand: code improvement 2020-11-29 08:09:00 -05:00
Brad King c8b2331e8b Merge topic 'rename_cuda_memcheck'
fea49b2df0 CTest: Rename CudaMemcheck to CudaSanitizer

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5514
2020-11-18 07:29:54 -05:00
Tobias Ribizel fea49b2df0 CTest: Rename CudaMemcheck to CudaSanitizer 2020-11-17 21:06:30 +01:00
Vitaly Stakhovsky f6e7d5f3a0 Reduce the scope of temporary cmProp variables and other improvements 2020-11-05 11:07:39 -05:00
Asit Dhal 3c324689a7 include: refactor call sites of cmMakefile::ReadDependentFile
Fixes: #16773
2020-10-21 11:20:37 +02:00
Adriaan de Groot c27553afb2 cmCTestBuildHandler: Avoid uninitialized line-numbers
When commands fail, there is no line number to report; still initialize
it explicitly to avoid compiler warnings.

Issue: #21166
2020-10-05 09:14:32 -04:00
Tobias Ribizel 050720f3ad CTest: add compute-sanitizer alias for cuda-memcheck 2020-10-01 09:01:01 +02:00
Zack Galbreath a8b7dd061b ctest: improve Unicode support for launchers
Fix launcher behavior for international characters in the path on Windows.
2020-09-28 13:13:52 -04:00
Zack Galbreath ab9ad2a6a0 ctest: report make-level errors to CDash when using launchers
Fixes: #19545
2020-09-28 13:13:52 -04:00
Zack Galbreath 56e4e942d2 ctest: split launcher XML writer into separate class
This refactor will allow us to more easily add additional warnings and errors
to builds that use launchers.
2020-09-28 13:13:52 -04:00
Kyle Edwards b2f3f831e2 Refactor: Use JSON helpers in CTest resource spec 2020-09-09 12:48:29 -04:00
Kitware Robot bdca8b01d2 Modernize: Use #pragma once in all header files
#pragma once is a widely supported compiler pragma, even though it is
not part of the C++ standard. Many of the issues keeping #pragma once
from being standardized (distributed filesystems, build farms, hard
links, etc.) do not apply to CMake - it is easy to build CMake on a
single machine. CMake also does not install any header files which can
be consumed by other projects (though cmCPluginAPI.h has been
deliberately omitted from this conversion in case anyone is still using
it.) Finally, #pragma once has been required to build CMake since at
least August 2017 (7f29bbe6 enabled server mode unconditionally, which
had been using #pragma once since September 2016 (b13d3e0d)). The fact
that we now require C++11 filters out old compilers, and it is unlikely
that there is a compiler which supports C++11 but does not support
#pragma once.
2020-09-03 09:30:21 -04:00
Vitaly Stakhovsky 11425041f0 cmMakefile::GetDefinition: return cmProp 2020-09-02 07:27:32 -04:00
Kevin Puetz 6a6f1d1edd CTest: exit nonzero after message(SEND_ERROR|FATAL_ERROR)
Fixes: #21004
2020-08-26 11:27:05 -04:00
Tobias Ribizel 562dcec3c4 CTest: Add error types to cuda-memcheck parser 2020-08-05 10:51:44 +02:00
Vitaly Stakhovsky f37c14e930 Source: use cmNonempty() 2020-07-28 08:31:31 -04:00
Brad King 79d341d4d4 Merge topic 'cmctest-stdstring'
825b04c67a cmCTest: Members accept std::string parameters

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5064
2020-07-28 08:25:47 -04:00
Vitaly Stakhovsky 825b04c67a cmCTest: Members accept std::string parameters 2020-07-27 10:58:39 -04:00
Robert Maynard c83919d193 CTest: Prefer normative terms to express subprocess failures
Issue: #21004
2020-07-27 10:32:21 -04:00
Tobias Ribizel fe062800f0 CTest: add cuda-memcheck support 2020-07-09 19:08:32 +02:00
Brad King fff14290d2 Merge topic 'cmprop'
b36d1bdd9d Single location for cmProp typedef

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4829
2020-06-02 08:00:55 -04:00
Vitaly Stakhovsky b36d1bdd9d Single location for cmProp typedef 2020-06-01 08:54:20 -04:00
Tobias Ellinghaus ed6d20ddcb CTest: Handle non-coverage lines in gcov files
This implements a TODO in gcov file handling.
2020-05-29 16:08:47 +02:00
Brad King 0a74d7c2b8 Merge branch 'backport-ctest-repeat-notrun' into ctest-repeat-notrun 2020-05-27 06:45:39 -04:00
Robert Maynard bbb62dcc72 CTest: Make sure NOT_RUN tests show up in the failed test log
Issue: #20543
2020-05-27 06:43:01 -04:00
Kyle Edwards a1612af749 CTest: Log environment variables as a test measurement 2020-05-19 10:26:57 -04:00
Marc Chevrier 2faa3f6c55 Refactoring: Third-parties public headers are under cm3p prefix
Fixes: #20666
2020-05-07 12:06:08 +02:00
Brad King 68a59ab288 Merge topic 'stl-support'
8d4a9ee398 Refactoring: rename "cm_static_string_view.hxx" as <cmext/string_view>

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4689
2020-05-01 08:27:37 -04:00
Marc Chevrier 8d4a9ee398 Refactoring: rename "cm_static_string_view.hxx" as <cmext/string_view> 2020-04-30 09:53:27 +02:00
Ben Boeckel 24a9fed5d9 IWYU: mark <cstddef> as needed
Newer IWYU is not seeing them as needed for `size_t`.
2020-04-29 11:16:44 -04:00
Brad King f9fbc78cd6 Merge topic 'ctest_stop_on_failure_16628'
e89aeba5c4 ctest: add option --stop-on-failure

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4630
2020-04-22 08:38:33 -04:00
Johnny Jazeix e89aeba5c4 ctest: add option --stop-on-failure
To stop the tests once one has failed

Fixes: #16628
2020-04-20 23:05:15 +02:00
Craig Scott 348a2a9734 Merge topic 'ctest-memcheck-sanitizers'
e03d3c08f0 CTest: Fix '-T MemCheck' command-line support for sanitizers
82b6091776 Tests: Fix RunCMake.ctest_memcheck test script syntax errors

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4618
2020-04-19 07:07:13 -04:00
Brad King e03d3c08f0 CTest: Fix '-T MemCheck' command-line support for sanitizers
In commit 49948f7221 (ctest_memcheck: Add support for ThreadSanitizer,
2014-07-07, v3.1.0-rc1~322^2~1) and commit 1e005eadbc (CTest: Fix
MemoryCheckType from 'ctest -T MemCheck', 2014-07-15, v3.1.0-rc1~298^2),
the `CMakeCommand` internal setting was left set only when using `ctest
-S` scripts.  Instead simply use CTest's corresponding CMake directly
without passing it through an internal setting.

Fixes: #20584
2020-04-17 08:36:01 -04:00
Marc Chevrier aacd4e4a90 Refactoring: add cm::contains to <cmext/algorithm> 2020-04-17 10:00:03 +02:00
Ben Boeckel 89207abf1f cmParseCacheCoverage: use cmSystemTools::SplitString 2020-04-13 11:26:03 -04:00
Ben Boeckel 59b7adddc4 nits: replace some "c" instances with 'c' 2020-04-13 11:26:03 -04:00
Ben Boeckel f2a33107be clang-tidy: address bugprone-branch-clone lints
Arguably, many of these are bugs in `clang-tidy`. An if/else tree with
other conditionals between cloned blocks may be relying on the
intermediate logic to fall out of the case and inverting this logic may
be non-trivial.

See: https://bugs.llvm.org/show_bug.cgi?id=44165
2020-04-13 11:26:02 -04:00
Kyle Edwards 060d2ce269 CTest: Add CTEST_RESOURCE_SPEC_FILE variable 2020-04-02 16:29:50 -04:00