[cfe-dev] linking coverage library

Eric Christopher echristo at apple.com
Tue May 17 00:45:22 PDT 2011


On May 9, 2011, at 4:20 PM, Nick Lewycky wrote:

> Recently I added support for gcov-compatible coverage analysis to compilation. The remaining missing piece is that we should link against libprofile_rt.a when we see the relevant flags in the link step.
> 
> There's currently code in the Driver which adds "-lgcov" when those flags are visible in the link step. Will it break anything for anyone if I remove that? Consider the case where someone uses clang to build fortran by running gfortran and it emits a calls to libgcov that is then linked by clang?
> 
> Then I'd like to add in "-l:libprofile_rt.a". I know how gcc puts libgcov, but how do we ship libraries alongside clang? Does clang pass library search path flags to the linker?
> 
> If we can't remove -lgcov because of some reason, can we pass both -lgcov and "-l:profile_rt.a"? What about people without gcc installed?

I can't see why we can't remove the gcov one. At any rate the symbols generated, afaict, are going to have llvm_ prefixed on them and so we'd need the libprofile_rt ones anyhow.

-eric




More information about the cfe-dev mailing list