313 lines
12 KiB
XML
313 lines
12 KiB
XML
<?xml version='1.0' encoding='UTF-8'?>
|
|
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
|
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
|
|
|
<!--
|
|
|
|
`xsltproc -''-nonet \
|
|
-''-param man.charmap.use.subset "0" \
|
|
-''-param make.year.ranges "1" \
|
|
-''-param make.single.year.ranges "1" \
|
|
/usr/share/xml/docbook/stylesheet/nwalsh/manpages/docbook.xsl \
|
|
manpage.xml'
|
|
|
|
A manual page <package>.<section> will be generated. You may view the
|
|
manual page with: nroff -man <package>.<section> | less'. A typical entry
|
|
in a Makefile or Makefile.am is:
|
|
|
|
DB2MAN = /usr/share/sgml/docbook/stylesheet/xsl/nwalsh/manpages/docbook.xsl
|
|
XP = xsltproc -''-nonet -''-param man.charmap.use.subset "0"
|
|
|
|
manpage.1: manpage.xml
|
|
$(XP) $(DB2MAN) $<
|
|
|
|
The xsltproc binary is found in the xsltproc package. The XSL files are in
|
|
docbook-xsl. A description of the parameters you can use can be found in the
|
|
docbook-xsl-doc-* packages. Please remember that if you create the nroff
|
|
version in one of the debian/rules file targets (such as build), you will need
|
|
to include xsltproc and docbook-xsl in your Build-Depends control field.
|
|
Alternatively use the xmlto command/package. That will also automatically
|
|
pull in xsltproc and docbook-xsl.
|
|
|
|
Notes for using docbook2x: docbook2x-man does not automatically create the
|
|
AUTHOR(S) and COPYRIGHT sections. In this case, please add them manually as
|
|
<refsect1> ... </refsect1>.
|
|
|
|
To disable the automatic creation of the AUTHOR(S) and COPYRIGHT sections
|
|
read /usr/share/doc/docbook-xsl/doc/manpages/authors.html. This file can be
|
|
found in the docbook-xsl-doc-html package.
|
|
|
|
Validation can be done using: `xmllint -''-noout -''-valid manpage.xml`
|
|
|
|
General documentation about man-pages and man-page-formatting:
|
|
man(1), man(7), http://www.tldp.org/HOWTO/Man-Page/
|
|
|
|
-->
|
|
|
|
<!-- Fill in your name for FIRSTNAME and SURNAME. -->
|
|
<!ENTITY dhfirstname "Reijo">
|
|
<!ENTITY dhsurname "Tomperi">
|
|
<!-- dhusername could also be set to "&firstname; &surname;". -->
|
|
<!ENTITY dhusername "&dhfirstname; &dhsurname;">
|
|
<!ENTITY dhemail "aggro80@users.sourceforge.net">
|
|
<!-- SECTION should be 1-8, maybe w/ subsection other parameters are
|
|
allowed: see man(7), man(1) and
|
|
http://www.tldp.org/HOWTO/Man-Page/q2.html. -->
|
|
<!ENTITY dhsection "1">
|
|
<!-- TITLE should be something like "User commands" or similar (see
|
|
http://www.tldp.org/HOWTO/Man-Page/q2.html). -->
|
|
<!ENTITY dhtitle "cppcheck User Manual">
|
|
<!ENTITY dhucpackage "CPPCHECK">
|
|
<!ENTITY dhpackage "cppcheck">
|
|
]>
|
|
|
|
<refentry>
|
|
<refentryinfo>
|
|
<title>&dhtitle;</title>
|
|
<productname>&dhpackage;</productname>
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>&dhfirstname;</firstname>
|
|
<surname>&dhsurname;</surname>
|
|
<contrib>Wrote this manpage for the Debian system.</contrib>
|
|
<address>
|
|
<email>&dhemail;</email>
|
|
</address>
|
|
</author>
|
|
</authorgroup>
|
|
<copyright>
|
|
<year>2009</year>
|
|
<holder>&dhusername;</holder>
|
|
</copyright>
|
|
<legalnotice>
|
|
<para>This manual page was written for the Debian system
|
|
(but may be used by others).</para>
|
|
<para>Permission is granted to copy, distribute and/or modify this
|
|
document under the terms of the GNU General Public License,
|
|
Version 2 or (at your option) any later version published by
|
|
the Free Software Foundation.</para>
|
|
<para>On Debian systems, the complete text of the GNU General Public
|
|
License can be found in
|
|
<filename>/usr/share/common-licenses/GPL-2</filename>.</para>
|
|
</legalnotice>
|
|
</refentryinfo>
|
|
<refmeta>
|
|
<refentrytitle>&dhucpackage;</refentrytitle>
|
|
<manvolnum>&dhsection;</manvolnum>
|
|
</refmeta>
|
|
<refnamediv>
|
|
<refname>&dhpackage;</refname>
|
|
<refpurpose>Simple syntax checking of C/C++.</refpurpose>
|
|
</refnamediv>
|
|
<refsynopsisdiv>
|
|
<cmdsynopsis>
|
|
<command>&dhpackage;</command>
|
|
<arg choice="opt"><option>--all</option></arg>
|
|
<arg choice="opt"><option>--append [file]</option></arg>
|
|
<arg choice="opt"><option>--auto-dealloc [file]</option></arg>
|
|
<arg choice="opt"><option>--enable</option></arg>
|
|
<arg choice="opt"><option>--enable=id</option></arg>
|
|
<arg choice="opt"><option>--error-exitcode=[n]</option></arg>
|
|
<arg choice="opt"><option>--force</option></arg>
|
|
<arg choice="opt"><option>--help</option></arg>
|
|
<arg choice="opt"><option>-I[dir]</option></arg>
|
|
<arg choice="opt"><option>-j[jobs]</option></arg>
|
|
<arg choice="opt"><option>--quiet</option></arg>
|
|
<arg choice="opt"><option>--style</option></arg>
|
|
<arg choice="opt"><option>--suppressions [file]</option></arg>
|
|
<arg choice="opt"><option>--template ['text']</option></arg>
|
|
<arg choice="opt"><option>--unused-functions</option></arg>
|
|
<arg choice="opt"><option>--verbose</option></arg>
|
|
<arg choice="opt"><option>--version</option></arg>
|
|
<arg choice="opt"><option>--xml</option></arg>
|
|
<arg choice="opt"><option>file or path</option></arg>
|
|
<arg choice="plain"><option>...</option></arg>
|
|
</cmdsynopsis>
|
|
</refsynopsisdiv>
|
|
<refsect1 id="description">
|
|
<title>DESCRIPTION</title>
|
|
<para>Tool for static C/C++ code analysis
|
|
intended to complement the checking of the compiler.
|
|
Checks for: memory leaks, mismatching allocation-deallocation,
|
|
buffer overrun, and many more.</para>
|
|
</refsect1>
|
|
<refsect1 id="options">
|
|
<title>OPTIONS</title>
|
|
<para>Analyze given C/C++ files for common errors.</para>
|
|
<variablelist>
|
|
<!-- Use the variablelist.term.separator and the
|
|
variablelist.term.break.after parameters to
|
|
control the term elements. -->
|
|
<varlistentry>
|
|
<term><option>-a</option></term>
|
|
<term><option>--all</option></term>
|
|
<listitem>
|
|
<para>deprecated, use --enable=possibleError</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>--append=[file]</option></term>
|
|
<listitem>
|
|
<para>This allows you to provide information about functions by providing an implementation for these.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>--auto-dealloc [file]</option></term>
|
|
<listitem>
|
|
<para>Suppress warnings about classes that have automatic deallocation</para>
|
|
<para>The classnames must be provided in plain text - one classname / line - in a .lst file. </para>
|
|
<para>This option can be given several times, allowing you to provide several .lst files.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>--enable</option></term>
|
|
<listitem>
|
|
<para>Enable all extra checks</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>--enable=id</option></term>
|
|
<listitem>
|
|
<para>Enable specific checks. The available ids are:
|
|
<glosslist>
|
|
<glossentry><glossterm>exceptNew</glossterm>
|
|
<glossdef>
|
|
<para>
|
|
exception safety when using new
|
|
</para>
|
|
</glossdef>
|
|
</glossentry>
|
|
<glossentry><glossterm>exceptRealloc</glossterm>
|
|
<glossdef>
|
|
<para>
|
|
exceptRealloc - exception safety when reallocating
|
|
</para>
|
|
</glossdef>
|
|
</glossentry>
|
|
<glossentry><glossterm>possibleError</glossterm>
|
|
<glossdef>
|
|
<para>
|
|
exceptRealloc - Make the checking more sensitive. More bugs are detected,
|
|
but there are also more false positives.
|
|
</para>
|
|
</glossdef>
|
|
</glossentry>
|
|
<glossentry><glossterm>style</glossterm>
|
|
<glossdef>
|
|
<para>
|
|
exceptRealloc - Check coding style
|
|
</para>
|
|
</glossdef>
|
|
</glossentry>
|
|
<glossentry><glossterm>unusedFunctions</glossterm>
|
|
<glossdef>
|
|
<para>
|
|
check for unused functions
|
|
</para>
|
|
</glossdef>
|
|
</glossentry>
|
|
</glosslist>
|
|
Several ids can be given if you separate them with commas</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>--error-exitcode=[n]</option></term>
|
|
<listitem>
|
|
<para>If errors are found, integer [n] is returned instead of default 0.
|
|
EXIT_FAILURE is returned if arguments are not valid or if no input files are
|
|
provided. Note that your operating system can modify this value, e.g.
|
|
256 can become 0.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-f</option></term>
|
|
<term><option>--force</option></term>
|
|
<listitem>
|
|
<para>Force checking of files that have a lot of configurations. Error is printed if such a file is found so there is no reason to use this by
|
|
default.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-h</option></term>
|
|
<term><option>--help</option></term>
|
|
<listitem>
|
|
<para>Print help text.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-I [dir]</option></term>
|
|
<listitem>
|
|
<para>Give include path. Give several -I parameters to give several paths. First given path is checked first. If paths are relative to source
|
|
files, this is not needed.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-j [jobs]</option></term>
|
|
<listitem>
|
|
<para>Start [jobs] threads to do the checking work.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-q</option></term>
|
|
<term><option>--quiet</option></term>
|
|
<listitem>
|
|
<para>Only print something when there is an error.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-s</option></term>
|
|
<term><option>--style</option></term>
|
|
<listitem>
|
|
<para>deprecated, use --enable=style</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>--suppressions [file]</option></term>
|
|
<listitem>
|
|
<para>Suppress warnings listed in the file. Filename and line are optional. The format of the single line in file is: [error id]:[filename]:[line]</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>--template ['text']</option></term>
|
|
<listitem>
|
|
<para>Format the error messages. E.g. '{file}:{line},{severity},{id},{message}' or '{file}({line}):({severity}) {message}'. Pre-defined templates: gcc, vs</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>--unused-functions</option></term>
|
|
<listitem>
|
|
<para>deprecated, use --enable=unusedFunctions</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-v</option></term>
|
|
<term><option>--verbose</option></term>
|
|
<listitem>
|
|
<para>More detailed error reports</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>--version</option></term>
|
|
<listitem>
|
|
<para>Print out version information</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>--xml</option></term>
|
|
<listitem>
|
|
<para>Write results in xml to error stream</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</refsect1>
|
|
<refsect1 id="author">
|
|
<title>AUTHOR</title>
|
|
<para>The program was written by Bill Egert, Daniel Marjamäki, Gianluca Scacco, Hoang Tuan Su, Kimmo Varis, Leandro Penz, Nicolas Le Cam, Reijo Tomperi, Slava Semushin and Vesa Pikki</para>
|
|
</refsect1>
|
|
<refsect1 id="see_also">
|
|
<title>SEE ALSO</title>
|
|
<!-- In alpabetical order. -->
|
|
<para>Full list of features: http://cppcheck.wiki.sourceforge.net/</para>
|
|
</refsect1>
|
|
</refentry>
|