summaryrefslogtreecommitdiffstats
path: root/Source/CTest/cmCTestCoverageHandler.cxx
Commit message (Collapse)AuthorAgeFilesLines
* CTest: Add Jacoco Coverage functionalityJoseph Snyder2014-06-121-0/+40
| | | | | | | | Add the ability to parse the XML output of the Jacoco tool. Jacoco (www.eclemma.org/jacoco) is a Java coverage tool. Add and integrate a class for the parser and include a test which utilizes the new parser.
* CTest: Rename coverage implementation for "Python" to "Cobertura"Joseph Snyder2014-06-041-6/+6
| | | | | | The coverage.py tool writes out an XML that conforms to the Cobertura Coverage tool standard. Rename the cmParsePythonCoverage files to instead be cmParseCoberturaCoverage.
* CTest: Add support for Intel coverage filesVolkan Gezer2014-03-131-0/+305
| | | | | | | | | | | | | | | | | | By default, Intel compiler coverage tools generate HTML files as reports, but the option -txtlcov can be given to codecov to output a coverage file with LCov format. To use Intel coverage: * build the project with coverage flags * run the application * run profmerge * run codecov The output file will be "build_dir/CodeCoverage/SRCFILEDIR.LCOV". Ask users to compile with -prof-dir${BUILD_DIR} instead of searching the entire build tree recursively to find coverage files.
* Remove c_str calls when using stream APIs.Stephen Kelly2014-03-111-44/+44
| | | | | Use an ad-hoc clang tool for matching the calls which should be ported.
* Remove some c_str() calls.Stephen Kelly2014-03-111-6/+6
| | | | | | Use the clang RemoveCStrCalls tool to automatically migrate the code. This was only run on linux, so does not have any positive or negative effect on other platforms.
* strings: Remove cmStdString referencesBen Boeckel2014-03-081-12/+12
| | | | | | | | | | | 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: notify user if gcov cannot be foundZack Galbreath2014-02-281-0/+6
| | | | | Emit an error message when we're performing coverage using gcov and the gcov executable cannot be found.
* Use cmsys::[io]fstream instead of cmsys_ios::[io]fstream.Clinton Stimpson2014-01-071-9/+10
| | | | | Also use SystemTools::Fopen() instead of fopen(). This is to eventually support utf-8 filenames.
* CTest: clean TargetDirs between unrelated coverage runs (issue 13143)Nils Gladitz2013-10-291-0/+1
|
* Adding support for the Python coverage.py tool.Patrick Reynolds2013-10-081-0/+34
| | | | | | This assumes that coverage.py has been run in such a way to produce its standard XML output. This uses the Cobertura schema and should be somewhat generalizable.
* CTest: Coverage handler: expect certain output lines from gcov 4.7 (#13657)David Cole2012-12-101-4/+11
| | | | And do not report them as errors.
* Remove trailing whitespace from most CMake and C/C++ codeKitware Robot2012-08-131-39/+39
| | | | | | | | | | | | | | | | | 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/ \+$//'
* Merge topic 'mumps_coverage'David Cole2012-05-171-1/+51
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c806b23 CDash now supports lots of files in coverage. So, show all files. 761d931 Do not try to run bullseye coverage if COVFILE env is empty. 5b69ce4 Update test data to match new coverage format. 1b418f1 Change GT.M Coverage Parser global b0c07a1 Disable bullseye coverage for mumps coverage test. 0a169e6 Remove uncovered files from cache coverage data. a7abf5e Add ability to specify more than one package directory or coverage directory. 220afca Use <TARGET_FILE> expression to run ctest so it works with Xcode and VS IDE. 62f6bce Use a script to run the test because WORKING_DIRECTORY is not in 2.8.2. f5c5db0 Fix some warnings and a bug where it went past the length of a vector. 7955e99 Add support for Cache coverage. a86cd33 Add virutal destructor to silence warning. 319eeb0 Add test for mumps coverage. Also refactor code to prepare for cache coverage. 72210c2 Fix line length. dd07161 Fix warning about char* instead of const char*. e6412e0 Add support to ctest for GTM mumps coverage.
| * CDash now supports lots of files in coverage. So, show all files.Bill Hoffman2012-05-111-0/+3
| | | | | | | | | | | | Prior to this commit the mumps coverage only showed files that had at least one line of coverage. Now 0% covered files are shown as well.
| * Do not try to run bullseye coverage if COVFILE env is empty.Bill Hoffman2012-05-081-1/+1
| |
| * Add support for Cache coverage.Bill Hoffman2012-05-011-3/+22
| | | | | | | | | | This adds support for Cache coverage parsing. A test is added that does a basic run of the coverage on a small bit of data.
| * Add test for mumps coverage. Also refactor code to prepare for cache coverage.Bill Hoffman2012-05-011-1/+7
| | | | | | | | | | Add a simple test to make sure the GTM mumps coverage is working. Also refactor the code so that cache coverage can be added.
| * Fix line length.Bill Hoffman2012-04-261-1/+2
| |
| * Add support to ctest for GTM mumps coverage.Bill Hoffman2012-04-251-0/+21
| |
* | CTest: Modify reg ex so it also works with gcov 4.7 output (#13121)David Cole2012-05-031-1/+1
| |
* | ctest_coverage: Save/restore LC_ALL around gcov (#13136)Brad King2012-04-161-1/+29
|/ | | | | | | Commit ffbe61bb (make sure english is used for output of gcov, 2008-05-10) taught ctest_coverage to set LC_ALL=POSIX to get English output from gcov. Use the more portable value LC_ALL=C and restore the original value when finished.
* CTest: mark all gcov covered files as coveredRolf Eike Beer2012-02-151-1/+1
| | | | | | | | | | | Even if there are no lines covered in the file the gcov coverage report still contains valueable information, the amount of uncovered lines and which exactly they are. Set 'Covered="true"' for files we have a gcov report for even if they have no lines covered. Otherwise CDash will neither show the uncovered line count nor the detailed coverage report for this file. When CTEST_EXTRA_COVERAGE_GLOB was used to collect otherwise uncovered files 'Covered="true"' was unconditionally set, so this can't be worse here.
* CTest: Add COVERAGE_EXTRA_FLAGS cache variable (#12490)David Cole2011-10-221-2/+7
| | | | | | | | | | | | | | COVERAGE_EXTRA_FLAGS is a space separated value of extra flags that will be passed to gcov when ctest's coverage handler invokes gcov to do coverage analysis. Map to CoverageExtraFlags in the CTest ini file. Use default value of "-l" to match the coverage handler's earlier behavior from ctest 2.8.4 and earlier. The fix for related issue #11717 had added a " -p" which was the cause of both #12415 and #12490. Here, we revert that change to the default value, so -p is no longer there by default. The people that care to add -p may do so in their own build trees by appending " -p" to the new cache variable COVERAGE_EXTRA_FLAGS.
* CTest: Use the gcov --preserve-paths flag (#11717)Marco Craveiro2011-02-091-1/+1
| | | | | | | | | To avoid name clashes. Before this commit, name clashes can occur when invoking gcov on a project that uses the same file name in different directories. The --preserve-paths flag ensures all file names have a complete path, avoiding name clashes.
* Fix spelling errors reported by Lintian.Kai Wasserbäch2010-07-131-3/+3
| | | | | During a Lintian run on the binary packages of CMake in Debian I was notified of many spelling mistakes.
* Extra coverage glob should subtract the explicitly defined excluded filesZach Mullen2010-06-111-2/+6
|
* Add php coverage to ctest.Bill Hoffman2010-05-251-15/+19
|
* Fix shadowed local warning in coverage handlerZach Mullen2010-05-121-3/+3
|
* Change coverage globbing mechanism to resolve paths earlierZach Mullen2010-05-071-12/+15
|
* Coverage glob should search in Source dirZach Mullen2010-04-231-3/+9
|
* Implement extra coverage globbingZach Mullen2010-04-231-1/+82
|
* Fix issue #5668 - use CollapseFullPath when determining if covered file is ↵David Cole2009-10-121-91/+133
| | | | within source or binary tree. Allows gcc/gcov coverage analysis using MinGW on Windows.
* fix two more warnings from icpcAlexander Neundorf2009-10-041-3/+0
| | | | | | | asfGlob and abfGlob were there since rev 1.3 of this file (Oct 17th 2004) and unused since then, so remove them Alex
* 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.
* BUG: Do not produce empty coverage log filesBrad King2009-03-111-20/+21
| | | | | | | This moves the filtering of source files to before the production of coverage log files in order to avoid producing a CoverageLog-*.xml file for 100 filtered-out files. The change greatly reduces the number of submitted coverage files when using label filters.
* BUG: Do not carry over file list between coverageBrad King2009-03-111-0/+1
| | | | | | | | When performing multiple ctest_coverage() commands in a single CTest instance we need to clear the list of CoverageLog-*.xml files for submission. Otherwise if the current coverage run produces fewer log files than the previous run CTest will attempt to submit non-existing files.
* BUG: Avoid duplicate CTest coverage submissionBrad King2009-03-111-0/+19
| | | | | | This teaches ctest_coverage() to remove any existing CoverageLog-*.xml when it creates new coverage results. Otherwise the next ctest_submit() may submit old coverage log files which unnecessarily.
* ENH: Efficiently filter CTest coverage by labelBrad King2009-03-091-18/+55
| | | | | | | This teaches CTest to process coverage information only for object files in targets containing labels of interest. This change also improves loading of global coverage information by globbing only in each target support directory instead of the entire build tree.
* ENH: Generate a central list of target directoriesBrad King2009-03-091-4/+11
| | | | | | | | This generalizes the previous CMakeFiles/LabelFiles.txt created at the top of the build tree to a CMakeFiles/TargetDirectories.txt file. It lists the target support directories for all targets in the project. Labels can still be loaded by looking for Labels.txt files in each target directory.
* ENH: Teach ctest_coverage to filter with LABELSBrad King2009-03-021-0/+45
| | | | | This teaches ctest_coverage() to report only coverage of files labeled with at least one label given by a new LABELS option.
* BUG: Fix coverage label reports for BullseyeBrad King2009-03-021-4/+6
| | | | | This teaches CTest to report Labels elements in the Coverage.xml file for Bullseye coverage results.
* BUG: Fix coverage handler initializationBrad King2009-03-021-2/+5
| | | | | This resets coverage handler internal state on initialization so that multiple coverage runs are independent.
* ENH: Teach CTest to put labels in coverage resultsBrad King2009-02-131-7/+106
| | | | | | This teaches CTest to include source file labels in coverage dashboard submissions. The labels for each source are the union of the LABELS property from the source file and all the targets in which it is built.
* STYLE: Remove unused variableBrad King2009-02-131-4/+0
|
* ENH: Create cmXMLSafe to help escapes in XMLBrad King2009-02-051-11/+12
| | | | | | | 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.
* STYLE: fix warningBill Hoffman2009-01-291-1/+1
|
* STYLE: fix warningBill Hoffman2009-01-281-1/+1
|
* ENH: Divide CTest file submission list by partBrad King2009-01-121-3/+4
| | | | | | This splits the list of files for CTest to submit into those belonging to each part. The set is recombined just before submission. Later this will allow piecewise submissions.
* ENH: Teach ctest_* to create appending XML filesBrad King2009-01-121-3/+3
| | | | | This adds an APPEND option to the ctest_* commands which tells them to put the Append="true" attribute in the Site element of their XML file.