Comments (2)
This looks to be an issue with the signature of GreeterTests
It looks like, wherever you've used target_link_libraries it hasn't been using the PRIVATE/INTERFACE/PUBLIC keywords, ala:
target_link_libraries(GreeterTests *library*)
rather than something like
target_link_libraries(GreeterTests PRIVATE *library*)
and the issue is that CMake enforces them all to be one style or the other. The code-coverage code is assuming that, unless it is specified as PUBLIC or INTERFACE at the call point, that it should be PRIVATE by default.
The reason it's only here is because only the GCC variant needs to link to an external library gcov
. LLVM doesn't need to link into any external library.
Unfortunately, I can't see a way to programmatically determine if a keyword has been used to previous calls, so I'm going to keep the current behavior as-is.
To fix your case specifically, just add the appropriate keywords at the other callpoints to target_link_libraries
for GreeterTests
from cmake-scripts.
With target_link_libraries(GreeterTests PRIVATE doctest::doctest Greeter::Greeter)
:
code-coverage.cmake:447 (add_dependencies):
The dependency target "ccov-report-GreeterTests" of target "ccov-report"
does not exist.
from cmake-scripts.
Related Issues (20)
- Support for Interfaces HOT 1
- Broken macros in tools.cmake HOT 1
- Incompatibility with FindMPI HOT 1
- `ccov-clean` not compatible on Windows HOT 4
- `ccov-all*` not compatible on Windows HOT 2
- Excluding dependencies in code coverage reports HOT 11
- Question: Why doesn't the `link-time-optimization.cmake` script work with GCC? HOT 1
- Question: code coverage on all targets HOT 1
- [bug] the codecov showed the wrong cov range HOT 2
- Error when run llvm-cov in hithub ubuntu-latest HOT 1
- Suggestion: Merge with cmake-compiler-flags
- Cross-compilation support HOT 4
- Support for custom code coverage analysis tools
- ccov-all-export on Windows HOT 1
- Support for C in tools.cmake HOT 3
- Main page readme reports functionalities not available in latest release HOT 1
- Question: Long Link Time when using coverage HOT 3
- Sanitizer compilation test fails with Xcode generator.
- 24.04 always checking for include-what-you-use and cppcheck HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cmake-scripts.