static analysis of C/C++ code
Go to file
Kimmo Varis 00ae7dbda3 GUI: Move ShowTypes enum to own class and file.
We are using ShowTypes around the GUI codebase so it makes sense
to have it in its own class. And the class also contains related
helper functions instead of scattering them around different
classes.

ShowTypes also contains the visibility settings for all the
GUI severities. Implementation in this commit makes ShowTypes
class to load the visibility settings when it is created. And save
the settings when it is destroyed.
2011-10-11 22:20:36 +03:00
Cppcheck.xcodeproj Adapted Xcode project for version 1.45 and Xcode 3.2.4 2010-10-21 22:57:06 +02:00
cli Fix compiling on VC++ after previous commit 2011-10-09 21:14:44 +03:00
externals/tinyxml Don't use relative paths in tinyxml.pri. 2010-12-18 16:29:58 +02:00
gui GUI: Move ShowTypes enum to own class and file. 2011-10-11 22:20:36 +03: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 [PATCH] Detect suspicious use of semicolon after 'if/for/while' 2011-10-11 08:41:39 +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 [PATCH] Detect suspicious use of semicolon after 'if/for/while' 2011-10-11 08:41:39 +02:00
tools Merge pull request #32 from rpavlik/qmake-configure-rules 2011-08-19 13:00:34 -07: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: Set debug mode 2011-10-08 08:06:24 +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 Fix #2843, Astyle script does not recognize Astyle 2.02 2011-06-22 21:41:14 +03:00
runastyle.bat Run Astyle recursively for gui/test. 2011-06-10 14:22:18 +03: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/