Provided by: ggcov_0.9-10ubuntu2_amd64 

NAME
ggcov - a GNOME frontend for exploring gcov coverage data
SYNOPSIS
ggcov [GNOME options] [[-r] directory|file] ...
DESCRIPTION
Ggcov is a GTK+ GUI for exploring test coverage data produced by C and C++ programs compiled with gcc
-fprofile-arcs -ftest-coverage. So it's basically a GUI replacement for the gcov program that comes with
gcc.
Ggcov understands all the standard GTK+ and GNOME options, such as -display and -disable-crash-dialog.
All other arguments are used to specify how to find coverage data files. The arguments can combinations
of:
directory
The directory is scanned for source files, which are handled as if they had been specified on the
commandline (except that missing coverage data files are silently ignored). If the -r flag is in
effect, sub-directories are scanned recursively. Multiple directories can be specified and are
scanned in the order given.
executable
The executable file is scanned for debugging records which contain source file names, and each
source file which exists is handled as if it had been specified on the command line (except that
missing coverage data files are silently ignored). Any shared libraries on which the executable
depends are also scanned. Multiple executables can be specified and are scanned in the order
given. This feature is only available on some platforms (for example, i386-linux).
source-file
Is any regular file ending in one of the file extensions .c, .cc, .cxx, .cpp, or .C. Source files
are matched to their corresponding coverage data files (.gcno and .gcda files, or .bb, .bbg, and
.da files with older compilers) and object files by searching for a file of the same basename and
the appropriate extension first in the same directory as the source file and then in all the
directories specified on the command line (in the order they were specified).
If no arguments are given, ggcov shows a file selection dialog so you can select one directory,
executable, or source file.
Directories, executables, or source files can also be added after ggcov is started by dragging and
dropping them from a GNOME Nautilus window onto any ggcov window.
OPTIONS
-o dir, --object-directory=dir
Add the directory dir to the search path for object files and coverage data files.
-p dir, --gcda-prefix=dir
Look for runtime coverage data files (.gcda files) underneath the directory dir instead of next to
the corresponding .c files. See the example in the ggcov-run(1) manpage.
-r, --recursive
When a directory is specified on the command line, search for coverage data files recursively in
all child directories.
-w windows, --initial-windows=windows
Open the named windows when ggcov starts. Window names are summary, files, functions, calls,
callbutterfly, callgraph, lego, source, and reports. The default window is summary.
-X symbols, --suppress-ifdef=symbols
Do not include in statistics or summaries, code inside C pre-processor directives which depend on
any of the given symbols. One or more symbols may be given, separated by commas or whitespace.
Ggcov understands the following subset of the C pre-processor command set:
• #if SYMBOL
• #if defined(SYMBOL)
• #ifdef SYMBOL
• #ifndef SYMBOL
• #else
• #endif
For example, -X DEBUG will suppress the fprintf() call in this code:
unsigned int
my_function(unsigned int x)
{
x += 42;
#ifdef DEBUG
fprintf(stderr, "my_function: x=%u\n", x);
#endif
return x;
}
This option is useful for suppressing test infrastructure code, debugging code, or other code
which is compiled into the coverage test executable but whose coverage is not significant.
-Y words, --suppress-comment=words
Do not include in statistics or summaries, code on lines which also contains a single-line comment
comprising only one of the given words. One or more symbols may be given, separated by commas or
whitespace. For example, specifying -Y IGNOREME will suppress the assert() in this code:
unsigned int
my_function(unsigned int x)
{
x += 42;
assert(x >= 42); /* IGNOREME */
return x;
}
This option is useful for suppressing test infrastructure code, debugging code, or other code
which is compiled into the coverage test executable but whose coverage is not significant.
-Z startword,endword,...
--suppress-comment-between=startword,endword,...
Do not include in statistics or summaries, code on lines between those containing a single-line
comment comprising only startword and the next single-line comment comprising only endword. Two
or more symbols may be given, in pairs, separated by commas or whitespace. For example, -Z
STARTIGNORE,ENDIGNORE will suppress the entire function in this code:
/* STARTIGNORE */
unsigned int
my_function(unsigned int x)
{
x += 42;
return x;
}
// ENDIGNORE
This option is useful for suppressing test infrastructure code, debugging code, or other code
which is compiled into the coverage test executable but whose coverage is not significant.
EXAMPLES
View coverage data for all the available source in an executable (on some platforms only):
ggcov a.out
View coverage data for all the C source in the current directory, suppressing code which depends on the
symbols DEBUG or TEST:
ggcov -X DEBUG,TEST *.c
View coverage data for all the C source in one directory where the object files and test coverage data
files are in different directories:
ggcov /foo/obj/ /foo/cov-data/ /foo/src/
AUTHOR
Written by Greg Banks <gnb@users.sourceforge.net>.
COPYRIGHT
ggcov is Copyright © 2001-2005 Greg Banks <gnb@users.sourceforge.net>.
This is free software; see the COPYING file for copying conditions. There is NO warranty; not even for
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
SEE ALSO
ggcov-run(1).
GGCOV May 2005 GGCOV(1)