EnglishFrenchSpanish

Ad


OnWorks favicon

ggcov-webdb - Online in the Cloud

Run ggcov-webdb in OnWorks free hosting provider over Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

This is the command ggcov-webdb that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

PROGRAM:

NAME


ggcov-webdb - generate intermediate database for ggcov web interface

SYNOPSIS


ggcov-webdb [[-r] directory|file] ...

DESCRIPTION


Ggcov-webdb generates an intermediate database and tree of source files from a development
directory, in the form of a tarball. The files in this tarball are later used by the
ggcov PHP pages to present test coverage data to WWW browsers.

Test coverage data is produced by C and C++ programs compiled with gcc -fprofile-arcs
-ftest-coverage. So the combination of ggcov-webdb and the ggcov PHP pages is basically a
WWW replacement for the gcov program that comes with gcc.

The intermediate database approach is used to handle the common case where the development
machine and the web server machine are separate. The database contains coverage data in
an indexed, platform-independent, PHP-friendly form. Because the database format is
platform-independant the PHP pages can be deployed on web servers of a different
architecture to the development machines. In fact the ggcov web pages support any web
server that meets the following criteria:

· supports PHP version 4.3 or later, and

· provides the dba extension with the db4 provider (which ggcov uses to read the
intermediate database), and

· provides the gd extension (which ggcov uses to generate the bargraphs on the
Summary page).

The sourceforge.net project web server is an example of such a server.

Ggcov-webdb produces a gzipped tarball containing the intermediate database itself and
copies of all the source files which are mentioned in the database. This is all the
information that the ggcov web pages need, in one bundle which is convenient to copy from
the development machine to the web server. Usually this tarball would be extracted into a
subdirectory of /var/ggcov/tests/ on the web server.

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).

OPTIONS


-f test.tgz, --output-file=test.tgz
Generate output to filename test.tgz instead of the default ggcov.webdb.tgz. The
special filename - can be used to generate output to stdout.

-o dir, --object-directory=dir
Add the directory dir to the search path for object files and coverage data files.

-r, --recursive
When a directory is specified on the command line, search for coverage data files
recursively in all child directories.

-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-webdb 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


Generate intermediate database for all the available source in the executable a.out (on
some platforms only), and install as test foo in the default tests location.

mkdir /var/ggcov/tests/foo
ggcov-webdb -f - a.out |
(cd /var/ggcov/tests/foo ; tar -xzf - )

Generate intermediate database for all the C source in the current directory.

ggcov-webdb *.c

Generate intermediate database for all the C source in one directory where the object
files and test coverage data files are in different directories:

ggcov-webdb /foo/obj/ /foo/cov-data/ /foo/src/

Use ggcov-webdb online using onworks.net services


Free Servers & Workstations

Download Windows & Linux apps

  • 1
    Phaser
    Phaser
    Phaser is a fast, free, and fun open
    source HTML5 game framework that offers
    WebGL and Canvas rendering across
    desktop and mobile web browsers. Games
    can be co...
    Download Phaser
  • 2
    VASSAL Engine
    VASSAL Engine
    VASSAL is a game engine for creating
    electronic versions of traditional board
    and card games. It provides support for
    game piece rendering and interaction,
    and...
    Download VASSAL Engine
  • 3
    OpenPDF - Fork of iText
    OpenPDF - Fork of iText
    OpenPDF is a Java library for creating
    and editing PDF files with a LGPL and
    MPL open source license. OpenPDF is the
    LGPL/MPL open source successor of iText,
    a...
    Download OpenPDF - Fork of iText
  • 4
    SAGA GIS
    SAGA GIS
    SAGA - System for Automated
    Geoscientific Analyses - is a Geographic
    Information System (GIS) software with
    immense capabilities for geodata
    processing and ana...
    Download SAGA GIS
  • 5
    Toolbox for Java/JTOpen
    Toolbox for Java/JTOpen
    The IBM Toolbox for Java / JTOpen is a
    library of Java classes supporting the
    client/server and internet programming
    models to a system running OS/400,
    i5/OS, o...
    Download Toolbox for Java/JTOpen
  • 6
    D3.js
    D3.js
    D3.js (or D3 for Data-Driven Documents)
    is a JavaScript library that allows you
    to produce dynamic, interactive data
    visualizations in web browsers. With D3
    you...
    Download D3.js
  • More »

Linux commands

Ad