summaryrefslogtreecommitdiffstats
path: root/Source/CTest/cmCTestMultiProcessHandler.h
Commit message (Collapse)AuthorAgeFilesLines
* Use quotes for non-system includesDaniel Pfeifer2017-04-111-2/+2
| | | | | | | | | | | | | Automate with: git grep -l '#include <cm_' -- Source \ | xargs sed -i 's/#include <\(cm_.*\)>/#include "\1"/g' git grep -l '#include <cmsys/' -- Source \ | xargs sed -i 's/#include <\(cmsys\/.*\)>/#include "\1"/g' git grep -l '#include <cm[A-Z]' -- Source \ | xargs sed -i 's/#include <\(cm[A-Z].*\)>/#include "\1"/g'
* Simplify CMake per-source license noticesBrad King2016-09-271-11/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Per-source copyright/license notice headers that spell out copyright holder names and years are hard to maintain and often out-of-date or plain wrong. Precise contributor information is already maintained automatically by the version control tool. Ultimately it is the receiver of a file who is responsible for determining its licensing status, and per-source notices are merely a convenience. Therefore it is simpler and more accurate for each source to have a generic notice of the license name and references to more detailed information on copyright holders and full license terms. Our `Copyright.txt` file now contains a list of Contributors whose names appeared source-level copyright notices. It also references version control history for more precise information. Therefore we no longer need to spell out the list of Contributors in each source file notice. Replace CMake per-source copyright/license notice headers with a short description of the license and links to `Copyright.txt` and online information available from "https://cmake.org/licensing". The online URL also handles cases of modules being copied out of our source into other projects, so we can drop our notices about replacing links with full license text. Run the `Utilities/Scripts/filter-notices.bash` script to perform the majority of the replacements mechanically. Manually fix up shebang lines and trailing newlines in a few files. Manually update the notices in a few files that the script does not handle.
* CTest: fix include-what-you-use violationsDaniel Pfeifer2016-08-251-2/+10
|
* Pass arguments that are not modified as const&.Daniel Pfeifer2016-05-261-1/+1
| | | | | | | Use clang-tidy's performance-unnecessary-value-param checker to find value parameter declarations of expensive to copy types that are not modified inside the function. Ignore findings in kwsys. After applying the fix-its, manually change `const T&` to `T const&`.
* Revise C++ coding style using clang-formatKitware Robot2016-05-161-20/+32
| | | | | | | | | | | | | Run the `Utilities/Scripts/clang-format.bash` script to update all our C++ code to a new style defined by `.clang-format`. Use `clang-format` version 3.8. * If you reached this commit for a line in `git blame`, re-run the blame operation starting at the parent of this commit to see older history for the content. * See the parent commit for instructions to rebase a change across this style transition commit.
* Source: Stabilize include orderBrad King2016-04-291-1/+1
| | | | | Each source file has a logical first include file. Include it in an isolated block so that tools that sort includes do not move them.
* ctest: Optionally avoid starting tests that may exceed a given CPU loadBetsy McPhail2015-06-301-0/+3
| | | | | | | | | | | | | | Add a TestLoad setting to CTest that can be set via a new --test-load command-line option, CTEST_TEST_LOAD variable, or TEST_LOAD option to the ctest_test command. Teach cmCTestMultiProcessHandler to measure the CPU load and avoid starting tests that may take more than the spare load currently available. The expression <current_load> + <test_processors> <= <max-load> must be true to start a new test. Co-Author: Zack Galbreath <zack.galbreath@kitware.com>
* cmCTestMultiProcessHandler: Refactor RUN_SERIAL implementationZack Galbreath2015-06-301-0/+1
| | | | | | | | The original implementation of the RUN_SERIAL test property worked by having such a test consume all available processors. Instead use an explicit flag to indicate that a serial test is running. This avoids artificially inflating the number of processors a test is expected to consume.
* ctest_test: Add QUIET optionZack Galbreath2015-02-231-0/+3
|
* strings: Remove cmStdString referencesBen Boeckel2014-03-081-5/+5
| | | | | | | | | | | Casts from std::string -> cmStdString were high on the list of things taking up time. Avoid such implicit casts across function calls by just using std::string everywhere. The comment that the symbol name is too long is no longer relevant since modern debuggers alias the templates anyways and the size is a non-issue since the underlying methods are generated since it's inherited.
* CTest: fix regressions introduced by the ctest-fix-run-serial topicNils Gladitz2013-12-231-0/+6
| | | | | | The first regression resulted in endless looping due to unrun test dependencies. The second regression prioritized all tests with dependencies in serial test runs.
* CTest: perform cycle test earlyNils Gladitz2013-10-191-0/+1
|
* Remove trailing whitespace from most CMake and C/C++ codeKitware Robot2012-08-131-3/+3
| | | | | | | | | | | | | | | | | Our Git commit hooks disallow modification or addition of lines with trailing whitespace. Wipe out all remnants of trailing whitespace everywhere except third-party code. Run the following shell code: git ls-files -z -- \ bootstrap doxygen.config '*.readme' \ '*.c' '*.cmake' '*.cpp' '*.cxx' \ '*.el' '*.f' '*.f90' '*.h' '*.in' '*.in.l' '*.java' \ '*.mm' '*.pike' '*.py' '*.txt' '*.vim' | egrep -z -v '^(Utilities/cm|Source/(kwsys|CursesDialog/form)/)' | egrep -z -v '^(Modules/CPack\..*\.in)' | xargs -0 sed -i 's/ \+$//'
* Added CTest command --print-labelsZach Mullen2010-08-311-0/+1
| | | | | | This command allows a user to quickly see the list of all available test labels. The labels are also printed in verbose show only mode, alongside their corresponding tests.
* More robust cost-based scheduling implZach Mullen2010-07-011-2/+3
|
* Do not exit if stoptime is passed.Zach Mullen2010-06-151-0/+1
|
* Added RESOURCE_LOCK test property.Zach Mullen2010-03-021-1/+5
|
* If tests failed on the last run, have them run first next timeZach Mullen2010-03-011-1/+2
|
* Use historical average of test times to schedule tests.Zach Mullen2010-02-261-1/+5
|
* Added logic to check for cycles in the test dependency graph before any ↵Zach Mullen2009-11-021-0/+2
| | | | tests are run. Previously a cycle resulted in a segfault from stack overflow.
* Convert CMake to OSI-approved BSD LicenseBrad King2009-09-281-14/+9
| | | | | | | This converts the CMake license to a pure 3-clause OSI-approved BSD License. We drop the previous license clause requiring modified versions to be plainly marked. We also update the CMake copyright to cover the full development time range.
* BUG: Fixed segfault and bad reporting if a ctest executable could not be ↵Zach Mullen2009-09-101-2/+2
| | | | found. Also added some batch testing code that is not yet complete.
* ENH: ctest now writes time cost data to a file after a test set is run, and ↵Zach Mullen2009-09-081-2/+4
| | | | uses these time costs to schedule the processes the next time ctest is run in that build tree.
* ENH: Replaced the EXPENSIVE test property with a COST test property taking a ↵Zach Mullen2009-09-081-5/+5
| | | | floating point value. Tests are now started in descending order of their cost, which defaults to 0 if none is specified.
* ENH: Added ctest test options PROCESSORS and RUN_SERIAL. These allow ↵Zach Mullen2009-09-071-0/+2
| | | | specification of resource allocation for given tests running with the ctest -j N option. RUN_SERIAL ensures that a given test does not run in parallel with any other test. Also forced appending of "..." to the longest test name in ctest.
* Added the test property EXPENSIVE, which denotes that the given test(s) ↵Zach Mullen2009-09-041-1/+3
| | | | should be started prior to tests that are not marked as such. Also fixed test dependencies, and a few uninitialized variables in cmProcess.
* Fixed ctest output where max test index is not the same width as the total ↵Zach Mullen2009-09-021-5/+6
| | | | number of tests. Also some preliminary changes for batching ctest jobs
* Fixed conversion warning on 64 bit machinesZach Mullen2009-08-311-2/+2
|
* Added ctest -N test. Fixed ctest working directory bug. MemCheck fix ↵Zach Mullen2009-08-281-1/+5
| | | | coming soon...
* Fixed ctest -N segfault issue. Further refactored ctest. Enabled failover ↵Zach Mullen2009-08-271-3/+7
| | | | for ctest
* ENH: refactored ctest. All testing is now parallel. If no -j option is ↵Zach Mullen2009-08-261-11/+21
| | | | specified, defaults to a MP level of 1 (non parallel)
* COMP: fix some more warningsBill Hoffman2008-07-071-4/+0
|
* COMP: try to fix sgi compiler problem with set and also shorten symbol ↵Bill Hoffman2008-07-041-2/+4
| | | | lengths for set class
* ENH: add initial ctest -j featureBill Hoffman2008-07-031-0/+84