summaryrefslogtreecommitdiffstats
path: root/Source/CTest/cmCTestBuildHandler.cxx
Commit message (Collapse)AuthorAgeFilesLines
* Add CTEST_LABELS_FOR_SUBPROJECTS as a CTest module and script variableBetsy McPhail2017-07-101-0/+1
| | | | | Use this variable to specify a list of labels that will be reported to CDash as subprojects.
* Access string npos without instancePavel Solodovnikov2017-06-011-2/+2
|
* Use quotes for non-system includesDaniel Pfeifer2017-04-111-3/+3
| | | | | | | | | | | | | 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'
* cmCTestBuildHandler: Fix warning in FragmentCompare signatureBrad King2017-01-161-1/+1
| | | | | | | | | ``` warning: the specified comparator type does not provide a const call operator [-Wuser-defined-warnings] ``` Reported-by: Sean McBride <sean@rogue-research.com>
* clang-tidy: apply modernize-use-bool-literals fixesDaniel Pfeifer2016-12-121-1/+1
|
* Add Encoding option for RunChild, RunMakeCommand and RunProcessDāvis Mosāns2016-11-141-2/+2
|
* Windows: Encode child process output to internally-used encodingDāvis Mosāns2016-11-141-2/+17
| | | | | | Typically Windows applications (eg. MSVC compiler) use current console's codepage for output to pipes so we need to encode that to our internally-used encoding (`KWSYS_ENCODING_DEFAULT_CODEPAGE`).
* cmCTestBuildHandler: Use size_t in ProcessBuffer length argumentBrad King2016-11-141-1/+1
|
* Simplify CMake per-source license noticesBrad King2016-09-271-12/+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.
* surround macro arguments with parenthesesDaniel Pfeifer2016-09-051-2/+2
|
* CTest: fix include-what-you-use violationsDaniel Pfeifer2016-08-251-12/+3
|
* CTest: don't use else after returnDaniel Pfeifer2016-08-181-2/+1
|
* use CM_NULLPTRDaniel Pfeifer2016-06-281-11/+12
|
* Use the empty() method to check for emptyness.Daniel Pfeifer2016-06-021-1/+1
| | | | | Apply fix-its from clang-tidy's readability-container-size-empty checker.
* Improve string find: prefer character overloads.Daniel Pfeifer2016-05-241-1/+1
| | | | | Apply fix-its from clang-tidy's performance-faster-string-find checker. Ignore findings in kwsys.
* Revise C++ coding style using clang-formatKitware Robot2016-05-161-523/+408
| | | | | | | | | | | | | 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.
* CTest: Do not treat "Note: ..." lines as errors (#14394)Brad King2016-05-111-0/+1
| | | | | | | | Otherwise CTest interprets the Qt5 moc tool output Note: No relevant classes found. No output generated. as a compiler error.
* Remove `//------...` horizontal separator commentsBrad King2016-05-091-20/+0
| | | | | | | | | | | | | | | | | | | | | | | | Modern editors provide plenty of ways to visually separate functions. Drop the explicit comments that previously served this purpose. Use the following command to automate the change: $ git ls-files -z -- \ "*.c" "*.cc" "*.cpp" "*.cxx" "*.h" "*.hh" "*.hpp" "*.hxx" | egrep -z -v "^Source/cmCommandArgumentLexer\." | egrep -z -v "^Source/cmCommandArgumentParser(\.y|\.cxx|Tokens\.h)" | egrep -z -v "^Source/cmDependsJavaLexer\." | egrep -z -v "^Source/cmDependsJavaParser(\.y|\.cxx|Tokens\.h)" | egrep -z -v "^Source/cmExprLexer\." | egrep -z -v "^Source/cmExprParser(\.y|\.cxx|Tokens\.h)" | egrep -z -v "^Source/cmFortranLexer\." | egrep -z -v "^Source/cmFortranParser(\.y|\.cxx|Tokens\.h)" | egrep -z -v "^Source/cmListFileLexer\." | egrep -z -v "^Source/cm_sha2" | egrep -z -v "^Source/(kwsys|CursesDialog/form)/" | egrep -z -v "^Utilities/(KW|cm).*/" | xargs -0 sed -i '/^\(\/\/---*\|\/\*---*\*\/\)$/ {d;}' This avoids modifying third-party sources and generated sources.
* Format include directive blocks and ordering with clang-formatBrad King2016-04-291-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sort include directives within each block (separated by a blank line) in lexicographic order (except to prioritize `sys/types.h` first). First run `clang-format` with the config file: --- SortIncludes: false ... Commit the result temporarily. Then run `clang-format` again with: --- SortIncludes: true IncludeCategories: - Regex: 'sys/types.h' Priority: -1 ... Commit the result temporarily. Start a new branch and cherry-pick the second commit. Manually resolve conflicts to preserve indentation of re-ordered includes. This cleans up the include ordering without changing any other style. Use the following command to run `clang-format`: $ git ls-files -z -- \ '*.c' '*.cc' '*.cpp' '*.cxx' '*.h' '*.hh' '*.hpp' '*.hxx' | egrep -z -v '(Lexer|Parser|ParserHelper)\.' | egrep -z -v '^Source/cm_sha2' | egrep -z -v '^Source/(kwsys|CursesDialog/form)/' | egrep -z -v '^Utilities/(KW|cm).*/' | egrep -z -v '^Tests/Module/GenerateExportHeader' | egrep -z -v '^Tests/RunCMake/CommandLine/cmake_depends/test_UTF-16LE.h' | xargs -0 clang-format -i This selects source files that do not come from a third-party. Inspired-by: Daniel Pfeifer <daniel@pfeifer-mail.de>
* Remove unused cmLocalGenerator include.Stephen Kelly2015-10-051-1/+0
|
* CTest: hide progress ticks in verbose outputDaniel Pfeifer2015-07-061-5/+5
| | | | | | | | | | The progress ticks and information about the length of the output are useful when the actual output is not visible. When the output is printed, the progress ticks * add no useful information, * do not look pretty, and * make the output hard to parse for tools.
* Merge topic 'ctest-xml-refactor'Brad King2015-05-281-58/+41
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | de2ef305 cmCTest: Drop unused method overloads b04500a7 cmCTest{Test,MemCheck}Handler: Port to cmXMLWriter 8fbc509a cmCTestCoverageHandler: Port to cmXMLWriter 82455a9d cmCTestBuildHandler: Port to cmXMLWriter 1dbd86fd cmCTestLaunch: Port to cmXMLWriter a53bd63e cmCTest: Port GenerateNotesFile to cmXMLWriter 9c0bb7d8 cmCTestConfigureHandler: Port to cmXMLWriter 6cf5cc71 cmCTestUploadHandler: Port to cmXMLWriter ed42c203 cmCTestUpdateHandler: Port to cmXMLWriter 18825baf cmCTest: Port to cmXMLWriter f6413400 Add cmXMLWriter class to consolidate XML generation
| * cmCTestBuildHandler: Port to cmXMLWriterDaniel Pfeifer2015-05-261-58/+41
| |
* | Merge topic 'ctest-update-gmake-error-match'Brad King2015-05-281-2/+2
|\ \ | |/ |/| | | | | 44a4e545 ctest_build: Fix regression in GNU make error message matching
| * ctest_build: Fix regression in GNU make error message matchingZack Galbreath2015-05-271-2/+2
| | | | | | | | | | | | | | The regex update in commit v3.1.2~4^2 (ctest_build: Update GNU make error message matching, 2015-01-28) broke matching of the messages it updated. Remove the escape character before the square brackets added by that commit.
* | Include cmAlgorithms where it is used.Stephen Kelly2015-03-101-0/+1
| |
* | ctest_build: Add QUIET optionZack Galbreath2015-02-231-34/+42
| |
* | Merge topic 'ctest-update-gmake-error-match'Brad King2015-01-291-2/+2
|\ \ | |/ | | | | | | d52b5f88 ctest_build: Update GNU make error message matching (#15379)
| * ctest_build: Update GNU make error message matching (#15379)Marco Nolden2015-01-281-2/+2
| | | | | | | | | | | | | | The "No rule to make target" error message of gmake is not correctly recognized since GNU make changed the quoting style in commit 23c2b99e9d (Convert all "`'" quotes to "''" per new GNU Coding Standard guidelines, 2012-03-04). Fix our regex to match both old and new quoting styles.
* | Replace foo.size() pattern with !foo.empty().Stephen Kelly2015-01-181-1/+1
| |
* | Replace 'foo.size() == 0' pattern with foo.empty().Stephen Kelly2015-01-181-2/+2
| |
* | Replace 'foo.size() > 0' pattern with !foo.empty().Stephen Kelly2015-01-181-2/+2
| |
* | ctest_build: Fix logic regression in parent that clips build outputBrad King2015-01-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | The sweeping pattern change in commit 238dd2fb (Use insert instead of a loop in some cases, 2014-11-22) accidentally changed the iterator range used on the queue in cmCTestBuildHandler::ProcessBuffer. Instead of ending at the iterator positioned at the next newline to populate CurrentProcessingLine, it was changed to go to the end of the queue. This causes the line to contain newlines and possibly be cut off in the middle of a line. Fix this regression by restoring use of the proper end-of-line position.
* | Use insert instead of a loop in some cases.Stephen Kelly2015-01-111-5/+2
| | | | | | | | | | | | Limit this change to inserting into a vector from a vector. A follow up change can use insert for inserting into a set.
* | Remove some unneeded c_str calls.Stephen Kelly2014-11-231-1/+1
| |
* | Merge topic 'remove-borland-build'Brad King2014-10-211-3/+0
|\ \ | | | | | | | | | | | | 2db55ffa Remove borland workarounds.
| * | Remove borland workarounds.Stephen Kelly2014-10-151-3/+0
| |/ | | | | | | | | CMake 3.0 is the last release to require to be able to build with Borland.
* | strings: Remove redundant calls to std::string::c_str()Nils Gladitz2014-10-151-4/+4
|/ | | | | Replacements were detected and performed by the clang tool remove-cstr-calls on a linux build.
* CTest: Teach the launchers to honer the max warnings and errorsBill Hoffman2014-06-251-2/+7
| | | | | | The ctest launcher code did not respect the number of errors and warnings limits. Limit the number of launcher report fragments that we report in the final submission.
* Remove c_str calls when using stream APIs.Stephen Kelly2014-03-111-1/+1
| | | | | Use an ad-hoc clang tool for matching the calls which should be ported.
* strings: Remove cmStdString referencesBen Boeckel2014-03-081-6/+6
| | | | | | | | | | | 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.
* Use cmsys::[io]fstream instead of cmsys_ios::[io]fstream.Clinton Stimpson2014-01-071-3/+4
| | | | | Also use SystemTools::Fopen() instead of fopen(). This is to eventually support utf-8 filenames.
* Use new cmHasLiteralPrefix functionStephen Kelly2013-11-211-2/+2
|
* Remove trailing whitespace from most CMake and C/C++ codeKitware Robot2012-08-131-6/+6
| | | | | | | | | | | | | | | | | 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/ \+$//'
* CTest: Detect Xcode error "Command ... failed with exit code"Alexandru Ciobanu2012-03-091-0/+1
|
* CTest: Recognize Intel errors without space before colon (#12627)Brad King2011-12-151-1/+1
| | | | | | | | Fix the regex meant to match errors of the form: C:\some\dir\source.cpp(17): catastrophic error: could not open source file "some_header.h" to make the space between ')' and ':' optional.
* CTest: catch warning output of Apache MavenRolf Eike Beer2011-03-181-1/+3
| | | | | | | | | | | | | | Some samples of things that got unnoticed by our nightly builds: $ JAVA_HOME= mvn Warning: JAVA_HOME environment variable is not set. ... $ mvn [INFO] Scanning for projects... [INFO] ------------------------------------------------------------------------ [ERROR] BUILD FAILURE ...
* Improve build error detection.David Cole2011-01-051-2/+3
| | | | | Some were missed recently on a failed dashboard build of ccmake on an HP-UX machine.
* Merge topic 'external-project-launcher'Brad King2010-07-131-5/+20
|\ | | | | | | | | | | b2634b6 Detect CMake warnings and errors in build output. 012c986 ExternalProject: Add LOG_* options to hide step output
| * Detect CMake warnings and errors in build output.David Cole2010-07-101-5/+20
| | | | | | | | | | | | | | | | | | | | | | | | Fix niggly in ExternalProject that would inadvertently create a log file of output when a command was explicitly set to the empty string. Also, increase the default value for showing context around build errors to 10 lines, up from 6. Also add the ability to customize this setting so that users can put it back to 6 or even lower if they want, or show more if they want.