summaryrefslogtreecommitdiffstats
path: root/Source/CTest/cmCTestBuildHandler.cxx
Commit message (Collapse)AuthorAgeFilesLines
* 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.
* | Eliminate -Wconversion warnings.David Cole2010-06-271-2/+2
|/ | | | | | Change types of local variables, or casting, or re-arrange expressions to get rid of "conversion may alter value" warnings as seen on recent dashboard submissions from londinium.kitware.
* Fix for for bug #10550, fix some errors for an old Sun compiler.Bill Hoffman2010-04-281-0/+1
|
* Fix issue #2336 - honor the -C arg to ctest. Honor it for all stages of ↵David Cole2009-12-041-7/+29
| | | | running -D dashboards from the command line and running ctest_configure, ctest_build and ctest_test commands in -S scripts. Also, allow a script to change it by setting the CTEST_CONFIGURATION_TYPE variable: allows for multiple configuration build/test cycles within one script. Add a new signature for the cmake command build_command that accepts CONFIGURATION as one argument. The original build_command signature is still there, but now marked as deprecated in the documentation. Of course... also add CTestConfig tests to verify that -C is honored for -D dashboards and -S scripts.
* Fix warnings in CMake source code. Suppress rampant warnings emanating from ↵David Cole2009-10-011-2/+2
| | | | Qt files.
* 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.
* Re-enabled failing tests; fixed ctest_build output to be consistent in the ↵Zach Mullen2009-09-211-5/+6
| | | | error condition across different make programs so that these tests would pass.
* Add parentheses around '&&' between '||' for gccBrad King2009-09-111-4/+4
| | | | | | | The GNU compiler warns about possible operator precedence mistakes and asks for explicit parentheses (-Wparentheses). We add the parentheses to silence the warning. This also fixes one real logic error in the find_package() implementation by correcting expression evaluation order.
* ENH: Report file names relative to source dirBrad King2009-02-121-3/+10
| | | | | This teaches cmCTestLaunch to report source files that lie under the top source directory relative to the top.
* BUG: Do not drop build fragments with same timeBrad King2009-02-121-3/+4
| | | | | | When we collect Build.xml fragments generated by 'ctest --launch', this lexicographically orders fragments with the same time stamp on disk instead of incorrectly dropping duplicates.
* ENH: Teach CTest dashboard builds to use launchersBrad King2009-02-111-2/+233
| | | | | | | | | | | This defines a 'UseLaunchers' CTest configuration option. When enabled, CTest skips log scraping from the Build step output. Instead it defines the environment variable CTEST_LAUNCH_LOGS to a log directory during the build. After the build it looks for error-*.xml and warning-*.xml files containing fragments for inclusion in Build.xml and submission. This is useful in conjuction with 'ctest --launch' and the RULE_LAUNCH_* properties to get reliable, highly-granular build failure reports.
* ENH: Create cmXMLSafe to help escapes in XMLBrad King2009-02-051-4/+5
| | | | | | | This class provides easy syntax to efficiently insert blocks of data into XML documents with proper escapes. It replaces the old cmCTest::MakeXMLSafe and cmSystemTools::MakeXMLSafe methods which allocated extra memory instead of directly streaming the data.
* ENH: Re-order generation of build summary and xmlBrad King2009-02-041-8/+9
| | | | | | This moves the error/warning count summary printed by cmCTestBuildHandler to after Build.xml is generated. Later we will compute the counts during generation of the xml.