Skip to content

genhtml finds wrong common prefix #130

Closed
@rlalik

Description

@rlalik

Hi,

I have weird problem with --exclude option and either I use it incorrect or something else is wrong.

I have a project which also uses CERN ROOT framework. The ROOT framework generates some special cc files which are compiled into libs, but are not needed for coverage.

So, I run lcov in a following way:

$ lcov --directory . --exclude "/usr/*" --capture --output-file coverage.info
Capturing coverage data from .
Found gcov version: 11.2.0
Using intermediate gcov format
Scanning . for .gcda files ...
Found 20 data files in .
Processing tests/CMakeFiles/gtests.dir/tests_PhysicsBase.cc.gcda
Processing tools/lib/CMakeFiles/G__cc6_tools_cc.dir/G__cc6_tools_cc.cxx.gcda
Processing tools/lib/CMakeFiles/cc6_tools.dir/DataStructConvert.cc.gcda
Processing tools/lib/CMakeFiles/cc6_tools.dir/PhysicsBase.cc.gcda
Processing common/lib/CMakeFiles/G__cc6_common_cc.dir/G__cc6_common_cc.cxx.gcda
Processing common/lib/CMakeFiles/cc6_common.dir/DR_GenerallStructs.cc.gcda
Processing common/lib/CMakeFiles/cc6_common.dir/Sources/MultiPointSource.cc.gcda
Processing common/lib/CMakeFiles/cc6_common.dir/Sources/PointSource.cc.gcda
Processing common/lib/CMakeFiles/cc6_common.dir/Sources/PlanarSource.cc.gcda
Processing common/lib/CMakeFiles/cc6_common.dir/Track.cc.gcda
Processing common/lib/CMakeFiles/cc6_common.dir/InputReaderEI.cc.gcda
Processing common/lib/CMakeFiles/cc6_common.dir/Source.cc.gcda
Processing common/lib/CMakeFiles/cc6_common.dir/InputReaderSimple.cc.gcda
Processing common/lib/CMakeFiles/cc6_common.dir/IsectionPoint.cc.gcda
Processing common/lib/CMakeFiles/cc6_common.dir/InputReaderGeant.cc.gcda
Processing common/lib/CMakeFiles/cc6_common.dir/G4Input.cc.gcda
Processing common/lib/CMakeFiles/cc6_common.dir/InputReaderNN.cc.gcda
Processing common/lib/CMakeFiles/cc6_common.dir/InputReader.cc.gcda
Processing common/lib/CMakeFiles/cc6_common.dir/BinnedGeometry.cc.gcda
Processing common/lib/CMakeFiles/cc6_common.dir/DetPlane.cc.gcda
Excluded data for 53 files due to include/exclude options
Finished .info-file creation

and

$ genhtml coverage.info --output-directory cov
Reading data file coverage.info
Found 34 entries.
Found common filename prefix "/home/dziadu/projects/ComptonCamera6"
Writing .css and .png files.
Generating output.
Processing file build_cc/common/lib/G__cc6_common_cc.cxx
Processing file build_cc/tools/lib/G__cc6_tools_cc.cxx
Processing file common/lib/InputReaderSimple.hh
Processing file common/lib/InputReaderGeant.hh
Processing file common/lib/IsectionPoint.hh
Processing file common/lib/InputReaderSimple.cc
Processing file common/lib/G4Input.cc
Processing file common/lib/Track.cc
Processing file common/lib/BinnedGeometry.cc
Processing file common/lib/InputReaderEI.hh
Processing file common/lib/DR_GenerallStructs.hh
Processing file common/lib/Source.cc
Processing file common/lib/DR_GenerallStructs.cc
Processing file common/lib/InputReaderNN.cc
Processing file common/lib/InputReaderEI.cc
Processing file common/lib/DetPlane.hh
Processing file common/lib/DetPlane.cc
Processing file common/lib/InputReader.cc
Processing file common/lib/IsectionPoint.cc
Processing file common/lib/InputReader.hh
Processing file common/lib/Source.hh
Processing file common/lib/InputReaderGeant.cc
Processing file common/lib/Track.hh
Processing file common/lib/InputReaderNN.hh
Processing file common/lib/Sources/PointSource.cc
Processing file common/lib/Sources/PointSource.hh
Processing file common/lib/Sources/PlanarSource.cc
Processing file common/lib/Sources/PlanarSource.hh
Processing file common/lib/Sources/MultiPointSource.cc
Processing file common/lib/Sources/MultiPointSource.hh
Processing file tests/tests_PhysicsBase.cc
Processing file tools/lib/DataStructConvert.cc
Processing file tools/lib/PhysicsBase.hh
Processing file tools/lib/PhysicsBase.cc
Writing directory view page.
Overall coverage rate:
  lines......: 11.6% (256 of 2211 lines)
  functions..: 6.7% (34 of 508 functions)

I have there unwanted files (first two in genhtml) matching pattern G__*cc_cxx which I would like to get rid of with `--exclude "/G___cc.cxx" liek this:

$ lcov --directory . --exclude "/usr/*" --exclude "*/G__*_cc.cxx" --capture --output-file coverage.info
Capturing coverage data from .
Found gcov version: 11.2.0
Using intermediate gcov format
Scanning . for .gcda files ...
Found 20 data files in .
Processing tests/CMakeFiles/gtests.dir/tests_PhysicsBase.cc.gcda
Processing tools/lib/CMakeFiles/G__cc6_tools_cc.dir/G__cc6_tools_cc.cxx.gcda
Processing tools/lib/CMakeFiles/cc6_tools.dir/DataStructConvert.cc.gcda
Processing tools/lib/CMakeFiles/cc6_tools.dir/PhysicsBase.cc.gcda
Processing common/lib/CMakeFiles/G__cc6_common_cc.dir/G__cc6_common_cc.cxx.gcda
Processing common/lib/CMakeFiles/cc6_common.dir/DR_GenerallStructs.cc.gcda
Processing common/lib/CMakeFiles/cc6_common.dir/Sources/MultiPointSource.cc.gcda
Processing common/lib/CMakeFiles/cc6_common.dir/Sources/PointSource.cc.gcda
Processing common/lib/CMakeFiles/cc6_common.dir/Sources/PlanarSource.cc.gcda
Processing common/lib/CMakeFiles/cc6_common.dir/Track.cc.gcda
Processing common/lib/CMakeFiles/cc6_common.dir/InputReaderEI.cc.gcda
Processing common/lib/CMakeFiles/cc6_common.dir/Source.cc.gcda
Processing common/lib/CMakeFiles/cc6_common.dir/InputReaderSimple.cc.gcda
Processing common/lib/CMakeFiles/cc6_common.dir/IsectionPoint.cc.gcda
Processing common/lib/CMakeFiles/cc6_common.dir/InputReaderGeant.cc.gcda
Processing common/lib/CMakeFiles/cc6_common.dir/G4Input.cc.gcda
Processing common/lib/CMakeFiles/cc6_common.dir/InputReaderNN.cc.gcda
Processing common/lib/CMakeFiles/cc6_common.dir/InputReader.cc.gcda
Processing common/lib/CMakeFiles/cc6_common.dir/BinnedGeometry.cc.gcda
Processing common/lib/CMakeFiles/cc6_common.dir/DetPlane.cc.gcda
Excluded data for 55 files due to include/exclude options
Finished .info-file creation

and the gen html shows

$ genhtml coverage.info --output-directory cov
Reading data file coverage.info
Found 32 entries.
Found common filename prefix "/home/dziadu/projects/ComptonCamera6/common"
Writing .css and .png files.
Generating output.
Processing file lib/InputReaderEI.hh
Processing file lib/IsectionPoint.hh
Processing file lib/DetPlane.hh
Processing file lib/IsectionPoint.cc
Processing file lib/InputReaderEI.cc
Processing file lib/InputReaderSimple.cc
Processing file lib/InputReader.hh
Processing file lib/InputReaderGeant.cc
Processing file lib/Track.hh
Processing file lib/InputReader.cc
Processing file lib/InputReaderNN.hh
Processing file lib/InputReaderGeant.hh
Processing file lib/Track.cc
Processing file lib/Source.cc
Processing file lib/InputReaderSimple.hh
Processing file lib/DR_GenerallStructs.hh
Processing file lib/G4Input.cc
Processing file lib/InputReaderNN.cc
Processing file lib/BinnedGeometry.cc
Processing file lib/Source.hh
Processing file lib/DR_GenerallStructs.cc
Processing file lib/DetPlane.cc
Processing file lib/Sources/PointSource.cc
Processing file lib/Sources/PlanarSource.hh
Processing file lib/Sources/MultiPointSource.hh
Processing file lib/Sources/PointSource.hh
Processing file lib/Sources/PlanarSource.cc
Processing file lib/Sources/MultiPointSource.cc
Processing file /home/dziadu/projects/ComptonCamera6/tests/tests_PhysicsBase.cc
Processing file /home/dziadu/projects/ComptonCamera6/tools/lib/DataStructConvert.cc
Processing file /home/dziadu/projects/ComptonCamera6/tools/lib/PhysicsBase.cc
Processing file /home/dziadu/projects/ComptonCamera6/tools/lib/PhysicsBase.hh
Writing directory view page.
Overall coverage rate:
  lines......: 0.0% (0 of 1366 lines)
  functions..: 0.0% (0 of 259 functions)

which apparently screw up all paths. Do you have an idea what is wrong?
Apparently the common path Found common filename prefix "/home/dziadu/projects/ComptonCamera6/common" is discovered wrong.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions