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?