{iframe:src=http://update.sonarsource.org/plugins/cxx.html|width=700|height=250|frameborder=0}
Your browser does not support iframes.
{iframe}

Description / Features

This plugin adds basic support of C++ language into Sonar.

Current feature list:

Dependencies

The Cxx-Plugin has an obligatory dependency on Java (of course... the plugin itself and all runners are Java programs).

Moreover, there are optional dependencies on:

Installation

 

  1. Via Update Center
  2. Or copy the jar-archive into <sonar home>/extensions/plugins/ directory
  3. Restart the Sonar web server

Quick Configuration Guide

 

Cxx plugin uses the following properties during analysis. See here for the ways how to pass them to the plugin.

 

 

Property

Scope

Default

Example

Description

sonar.cxx.suffixes.sourcesSystem- and/or project-widecxx,cpp,cc,c.C,.h

Comma separated list of file name extension to be considered as C++ source files during analysis.

sonar.cxx.suffixes.headersSystem- and/or project-widehxx,hpp,hh,h Comma separated list of file name extension to be considered as C++ source files during analysis.
sonar.cxx.cppcheck.reportPathProject-widecppcheck-reports/cppcheck-result-*.xmlcppcheck-report-*.xml

Ant pattern describing the path to Cppcheck reports, relative to projects root.

sonar.cxx.cppncss.reportPathProject-widecppncss-reports/cppncss-result-*.xmlcppncss-report-*.xmlAnt pattern describing the path to CppNcss reports, relative to projects root.
sonar.cxx.gcovr.reportPath (<0.2)Project-widegcovr-reports/gcovr-result-*.xmlgcovr-report-*.xmlAnt pattern describing the path to gcovr reports, relative to projects root.
sonar.cxx.rats.reportPathProject-widerats-reports/rats-result-*.xmlrats-report-*.xmlAnt pattern describing the path to RATS reports, relative to projects root.
sonar.cxx.valgrind.reportPathProject-widevalgrind-reports/valgrind-result-*.xmlvalgrind-report-*.xmlAnt pattern describing the path to Valgrind reports, relative to projects root.
sonar.cxx.vera.reportPathProject-widevera++-reports/vera++-result-*.xmlvera-report-*.xmlAnt pattern describing the path to Vera++ reports, relative to projects root.
sonar.cxx.xunit.reportPathProject-widexunit-reports/xunit-result-*.xmlxunit-report-*.xmlAnt pattern describing the path to unit test execution reports, relative to projects root.
sonar.cxx.pclint.reportPathProject-widepclint-reports/pclint-result-*.xmlpclint-result-*.xmlAnt pattern describing the path to pc-lint reports, relative to projects root.
sonar.cxx.externalrules.reportPathProject-wideexternalrules-result/externalrules-result-*.xmlexternalrules-result-*.xmlAnt pattern describing the path to unit test execution reports, relative to projects root.
sonar.cxx.xunit.xsltURLProject-wide cppunit-1.x-to-junit-1.0.xsl

A name of a built in XSLT-file or an URL to an external one. Available builtins:

  • boosttest-1.x-to-junit-1.0.xsl         For transforming Boost-reports
  • cpptestunit-1.x-to-junit-1.0.xsl      For transforming CppTestUnit-reports
  • cppunit-1.x-to-junit-1.0.xsl            For transforming CppUnit-reports
sonar.cxx.coverage.reportPath (>=0.2)Project-widecoverage-reports/coverage-*.xmlcoverage-*.xmlAnt pattern describing the path of unit test coverage reports, relative to projects root.
sonar.cxx.coverage.itReportPath (>=0.2)Project-widecoverage-reports/it-coverage-*.xmlit-coverage-*.xmlAnt pattern describing the path of integration test coverage reports, relative to projects root.
sonar.cxx.coverage.overallReportPath (>=0.2)Project-widecoverage-reports/overall-coverage-*.xmloverall-coverage-*.xmlAnt pattern describing the path of overall test coverage reports, relative to projects root.

 Note: Report paths are always relative to projects path.

Known limitations

Roadmap

Following items are in the queue (more or less...):

Changelog