summaryrefslogtreecommitdiffstats
path: root/Modules/CTestCoverageCollectGCOV.cmake
Commit message (Collapse)AuthorAgeFilesLines
* Don't include CMakeParseArgumentsDaniel Pfeifer2017-01-111-1/+0
| | | | | | | | | | | | The cmake_parse_arguments command is builtin with version 3.5. The CMakeParseArguments module is empty and exists for backwards compatibility with CMake 3.4 and lower. Remove the includes of CMakeParseArguments from CMake's modules. The modules are always used with the current version of CMake. Leave the includes in the tests, as the tests may be run with an older version of CMake.
* Simplify CMake per-source license noticesBrad King2016-09-271-12/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* CTestCoverageCollectGCOV: improve DELETE optionZack Galbreath2016-04-191-2/+6
| | | | | | | | | | | | | The DELETE option to ctest_coverage_collect_gcov now properly removes all the .gcov files that were created by this function. Previously it left behind any files that were excluded by CTEST_CUSTOM_COVERAGE_EXCLUDE. This option now also deletes the following files/directory that are created by ctest_coverage_collect_gcov: data.json coverage_file_list.txt the uncovered/ directory
* Merge topic 'branch_coverage_working_dir'Brad King2016-04-071-2/+2
|\ | | | | | | | | c5ff34cc CTestCoverageCollectGCOV: specify base dir for GLOB_RECURSE
| * CTestCoverageCollectGCOV: specify base dir for GLOB_RECURSEZack Galbreath2016-04-041-2/+2
| | | | | | | | | | | | Consistently glob for .gcda files in the binary directory. Previously the behavior of this function depended on the current working directory that it was called from.
* | CTestCoverageCollectGCOV: Improve documentationZack Galbreath2016-04-071-8/+13
| | | | | | | | Clean up prose and mention support for CTEST_EXTRA_COVERAGE_GLOB.
* | CTestCoverageCollectGCOV: Honor CTEST_EXTRA_COVERAGE_GLOBZack Galbreath2016-04-071-0/+57
|/ | | | | | | Teach CTestCoverageCollectGCOV to honor the CTEST_EXTRA_COVERAGE_GLOB variable. When this variable is set, this module will glob for matching source files that were not covered and include them in the resulting tar file.
* More options for CTestCoverageCollectGCOVZack Galbreath2016-02-101-17/+47
| | | | | | | | | | | | | | | This commit introduces two new options to CTestCoverageCollectGCOV. When GLOB is set we recursively search in the source & binary directories for .gcda files. Otherwise the default behavior is to parse TargetDirectories.txt for a list of locations to search. When DELETE is set we remove any .gcda file found after it has been used to generate the corresponding .gcov file. The .gcov file is also removed after the result tarball has been created. Together these two new features help support the use case of computing coverage across subprojects.
* CTEST_CUSTOM_*: treat variables as listsBen Boeckel2015-09-211-1/+1
|
* CTestCoverageCollectGCOV: Write tar files intended for CDash in gnutar formatNils Gladitz2015-04-101-0/+1
| | | | | PHP's PharData can not currently (PHP 5.6.4) extract paxr tar archives with long filenames.
* CTestCoverageCollectGCOV: Support CTEST_CUSTOM_COVERAGE_EXCLUDENils Gladitz2015-04-041-1/+30
|
* ctest_coverage: Add QUIET optionZack Galbreath2015-02-231-5/+20
|
* CTestCoverageCollectGCOV: Fix handling of international charactersBrad King2015-02-031-1/+2
| | | | | | | When loading the list of target support directories, read the file with UTF-8 encoding since that is what CMake writes into the file. This allows us to support international characters in the path to the build tree containing the target support directories.
* CTestCoverageCollectGCOV: Allow custom flags to gcovBill Hoffman2015-02-031-2/+15
| | | | | | | | Add a GCOV_OPTIONS option to allow specification of custom flags. In ctest_coverage gcov support, if you set CTEST_COVERAGE_EXTRA_FLAGS, they get put on the command line before the -o. In this case we remove the -b and replace it with GCOV_OPTIONS. All other arguments remain the same.
* CTestCoverageCollectGCOV: Fix handling of large file countsBill Hoffman2015-02-031-2/+9
| | | | Use the --files-from option to tar to handle lots of files.
* CTestCoverageCollectGCOV: Add module to run gcovBill Hoffman2015-01-221-0/+138
Provide a function to run gcov and create a tarball of results. Since CDash tracks the md5sum of the files uploaded, use the --mtime option with "cmake -E tar" so that tar files could be created that would have the same md5sum with the same content.