You need --coverage when linking as well
Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
diff --git a/Makefile b/Makefile
index e5dddba..5e0275a 100644
--- a/Makefile
+++ b/Makefile
@@ -100,8 +100,9 @@
test: check
ifndef WINDOWS
-# note: for coverage testing, build with:
-# make CFLAGS='--coverage -g3 -O0'
+# Note: for coverage testing, build with:
+# make CFLAGS='--coverage -g3 -O0' LDFLAGS='--coverage -g3 -O0'
+# For the reference coverage measurement, see tests/scripts/basic-build-test.sh
covtest:
$(MAKE) check
programs/test/selftest
diff --git a/scripts/lcov.sh b/scripts/lcov.sh
index 718166d..8d141ee 100755
--- a/scripts/lcov.sh
+++ b/scripts/lcov.sh
@@ -6,8 +6,14 @@
Collect coverage statistics of library code into an HTML report.
General instructions:
-1. Build the library with CFLAGS="--coverage -O0 -g3".
+1. Build the library with CFLAGS="--coverage -O0 -g3" and link the test
+ programs with LDFLAGS="--coverage".
This can be an out-of-tree build.
+ For example (in-tree):
+ make CFLAGS="--coverage -O0 -g3" LDFLAGS="--coverage"
+ Or (out-of-tree):
+ mkdir build-coverage && cd build-coverage &&
+ cmake -D CMAKE_BUILD_TYPE=Coverage .. && make
2. Run whatever tests you want.
3. Run this script from the parent of the directory containing the library
object files and coverage statistics files.