static analysis of C/C++ code
Go to file
Edoardo Prezioso f4cdf57955 Fixed ticket #3229 (Segfault with goto):
Don't handle labels, gotos, returns and indentations inside the round braces. This is applied not only for simplifyGoto, but also to simplifyFlowControl.
Rewrite enum badly handled by astyle inside mathlib.cpp and move simplifyFlowControl at the end of the simplifyTokenList in order to catch more dead code, not related to the ticket.
2011-10-18 23:56:35 +02:00
Cppcheck.xcodeproj Adapted Xcode project for version 1.45 and Xcode 3.2.4 2010-10-21 22:57:06 +02:00
cli cli: updated help text for --std option 2011-10-16 15:32:40 +02:00
externals/tinyxml Don't use relative paths in tinyxml.pri. 2010-12-18 16:29:58 +02:00
gui fixed a few doxygen warnings 2011-10-16 17:16:07 +02:00
htdocs htdocs: fix typo in error messages and php code (writeable -> writable) 2011-10-01 09:20:26 +02:00
htmlreport Fixed #3057 (cppcheck-htmlreport fails since 1.50) 2011-08-30 20:30:52 +02:00
lib Fixed ticket #3229 (Segfault with goto): 2011-10-18 23:56:35 +02:00
man manual: removed appendix. That info are available in separate articles. 2011-10-08 13:45:53 +02:00
rules Add a few more rules 2011-02-02 20:08:03 -06:00
test Fixed ticket #3229 (Segfault with goto): 2011-10-18 23:56:35 +02:00
tools Makefile: Disable rules by default 2011-10-17 20:18:36 +02:00
win_installer 1.51: Updated versions 2011-10-08 07:45:39 +02:00
.gitignore Add .obj files to gitignore. 2011-02-05 23:46:10 +02:00
AUTHORS With the agreement of Daniel Marjamäki, I write my name in this AUTHORS file. 2011-06-11 00:03:55 +02:00
COPYING Licensing: Using the GPL 3 license 2008-10-26 07:55:15 +00:00
Changelog 1.51: Updated Changelog 2011-10-08 07:48:29 +02:00
Makefile Makefile: Disable rules by default 2011-10-17 20:18:36 +02:00
build-pcre.txt HAVE_RULES support for build.bat 2011-08-18 16:01:39 -05:00
build.bat Merge pull request #32 from rpavlik/qmake-configure-rules 2011-08-19 13:00:34 -07:00
cppcheck.cbp Update codeblocks project file to contain new files 2011-03-17 23:36:58 +02:00
cppcheck.cppcheck GUI: Rename Ignore-feature to Exclude-feature. 2011-08-23 20:44:04 +03:00
cppcheck.sln Update VS solution files for test project name change. 2011-09-26 23:54:08 +03:00
cppcheck_vs2010.sln Update VS solution files for test project name change. 2011-09-26 23:54:08 +03:00
createrelease createrelease: added info about how scp is used to upload files to release system 2011-10-08 10:16:38 +02:00
doxyfile doxygen: enabled the JAVADOC_AUTOBRIEF so the @brief isn't required 2010-03-17 21:29:45 +01:00
generate_coverage_report LCOV: updated the generate_coverage_report to avoid some redundant compiler warnings 2011-03-14 11:21:35 +01:00
readme.txt readme: added a little info about compiling without pcre 2011-04-23 08:59:54 +02:00
readme_64-bit_Windows.txt Fixed some spelling mistakes 2010-12-15 18:45:53 +01:00
readme_gui.txt GUITESTS: Add short mention of tests to gui readme. 2011-06-18 13:11:05 +03:00
runastyle changed the astyle formatting flags 2011-10-13 20:53:06 +02:00
runastyle.bat changed the astyle formatting flags 2011-10-13 20:53:06 +02:00
webreport.sh webreport: refactoring 2011-03-14 13:40:10 +01:00

readme.txt

=========
Cppcheck
=========


About

    The original name of this program is "C++check" but it was later changed to "cppcheck".

Manual

    A manual is available online:
    http://cppcheck.sf.net/manual.pdf

Compiling

    Any C++ compiler should work.

    To build the GUI, you need Qt.

    When building the command line tool, PCRE is normally used.
    PCRE is optional.

    There are multiple compilation choices:
      * qmake - cross platform build tool
      * Windows: Visual Studio
      * Windows: Qt Creator + mingw
      * gnu make
      * g++

    qmake
    =====
        You can use the gui/gui.pro file to build the GUI.
            cd gui
            qmake
            make

    Visual Studio
    =============
        Use the cppcheck.sln file. The rules are normally enabled.

        To compile with rules (pcre dependency):
            * the pcre dll is needed. it can be downloaded from:
                http://cppcheck.sf.net/pcre-8.10-vs.zip

        To compile without rules (no dependencies):
            * remove the preprocessor define HAVE_RULES from the project
            * remove the pcre.lib from the project

    Qt Creator + mingw
    ==================
        The PCRE dll is needed to build the CLI. It can be downloaded here:
            http://software-download.name/pcre-library-windows/

    gnu make
    ========
        To build Cppcheck with rules (pcre dependency):
            make

        To build Cppcheck without rules (no dependencies):
            make HAVE_RULES=no

    g++ (for experts)
    =================
        If you just want to build Cppcheck without dependencies then you can use this command:
            g++ -o cppcheck -Ilib cli/*.cpp lib/*.cpp

        If you want to use --rule and --rule-file then dependencies are needed:
            g++ -o cppcheck -lpcre -DHAVE_RULES -Ilib -Iexternals cli/*.cpp lib/*.cpp externals/tinyxml/*.cpp
    mingw
    =====
        make LDFLAGS=-lshlwapi

Cross compiling Win32 (CLI) version of Cppcheck in Linux

    sudo apt-get install mingw32
    make CXX=i586-mingw32msvc-g++ LDFLAGS="-lshlwapi"
    mv cppcheck cppcheck.exe

Webpage

    http://cppcheck.sourceforge.net/