summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJames Laird <jlaird@hdfgroup.org>2006-09-26 21:33:43 (GMT)
committerJames Laird <jlaird@hdfgroup.org>2006-09-26 21:33:43 (GMT)
commit97db646184a7591123cbeed622f3fe8020e9f2dc (patch)
tree5a63bcdf4560694fe682e636ea4b7fa539b3256b
parent110a855d5e4509ed41b612206dd621f3223f0d55 (diff)
downloadhdf5-97db646184a7591123cbeed622f3fe8020e9f2dc.zip
hdf5-97db646184a7591123cbeed622f3fe8020e9f2dc.tar.gz
hdf5-97db646184a7591123cbeed622f3fe8020e9f2dc.tar.bz2
[svn-r12688] Added a script to generate code coverage information. To create files that
record how often each line of HDF5 source was run, check out a fresh copy of hdf5 and run "bin/gcov_script" . No changes to the code.
-rwxr-xr-xbin/gcov_script52
1 files changed, 52 insertions, 0 deletions
diff --git a/bin/gcov_script b/bin/gcov_script
new file mode 100755
index 0000000..a89e6c9
--- /dev/null
+++ b/bin/gcov_script
@@ -0,0 +1,52 @@
+#! /bin/sh
+#
+# Copyright by The HDF Group (THG).
+# All rights reserved.
+#
+# This file is part of HDF5. The full HDF5 copyright notice, including
+# terms governing use, modification, and redistribution, is contained in
+# the files COPYING and Copyright.html. COPYING can be found at the root
+# of the source code distribution tree; Copyright.html can be found at the
+# root level of an installed copy of the electronic HDF5 document set and
+# is linked from the top-level documents page. It can also be found at
+# http://www.hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
+# access to either file, you may request a copy from help@hdfgroup.org.
+#
+
+# A script to generate coverage files for HDF5 using gcov.
+# Configures, builds, and runs tests in-place; the output files will be placed
+# in a directory called gcov_logs.
+# Must be invoked from the root hdf5 directory.
+# This script has only been tested on heping.
+
+CFLAGS="$CFLAGS -ftest-coverage -fprofile-arcs"
+export CFLAGS
+./configure --enable-debug=all
+make
+make check
+mkdir gcov_logs
+cd src
+for j in *.c
+ do
+ gcov -b $j >> gcov.log 2>&1
+ done
+for j in *.gcov
+ do
+ mv $j ../gcov_logs
+ done
+mv gcov.log ../gcov_logs
+cd ..
+
+
+
+
+
+
+
+
+
+
+
+
+
+