Installation Notes for the MISRA C:2012 Compliance Module
M3CM-1.0-QAC-8.1.2


July 2013


Contents

Introduction

Installing M3CM-1.0-QAC-8.1.2

Uninstalling M3CM-1.0-QAC-8.1.2

Compliance Module Components

Unless otherwise noted, all materials provided in this release are Copyright (c) 2013 Programming Research.

Introduction

This document describes the procedures required for installing the M3CM-1.0-QAC-8.1.2 MISRA C:2012 Compliance Module for use with QA C 8.1.2 on the windows platform. Please note that this version of M3CM is designed to operate with QA C version 8.1.2 and will not function correctly with earlier releases.

The M3CM-1.0-QAC-8.1.2 package is designed to enforce compliance with the MISRA C:2012 programming standard in conjunction with QA C 8.1.2. Your attention is drawn to the following documents located in the m3cm\doc directory (which is found within the installed instance of M3CM):

All usage of this software must be in accordance with the terms of a current licence agreement with Programming Research as supplied with QA C. M3CM-1.0-QAC-8.1.2 is not licensed directly, but to use the product you will need an installed and licensed instance of QA C, of which M3CM is an extension.

Installing M3CM-1.0-QAC-8.1.2

Note that this version of M3CM will be installed into the same directory as any existing M3CM for QA C 8.1.2, overwriting any existing version of M3CM.

  1. In general you will download M3CM-1.0-QAC-8.1.2-Win.exe, alternatively you may obtain the software on CD. Hence you may install directly using the downloaded package, or you may install M3CM-1.0-QAC-8.1.2 directly from your release CD. Alternatively, if you wish to install from a directory on a local disc or fileserver, insert the distributed software and copy its contents to a suitable location.

  2. When installing from a download, run M3CM-1.0-QAC-8.1.2-Win.exe, or, when installing from a release CD, run setup.exe

    The setup process will install the supplied files.

  3. You are advised to take copies of your M3CM personality files before introducing any changes you wish to make.

Uninstalling M3CM-1.0-QAC-8.1.2

This package automatically uninstalls when you uninstall QAC 8.1.2. Note M3CM-1.0-QAC-8.1.2 cannot be uninstalled in isolation.

Compliance Module Components

M3CM can only be installed as an add-on to QA C. When M3CM is installed, the components are copied to a directory called m3cm within the QA C installation directory. The compliance module contains a number of elements which configure QA C and also extend the range of analysis checks. The following table describes the most important files:

DirectoryFilesDescription
m3cm\bin
about_m3cm.exe M3CM version details report program.
m3cmconf.bat Script to initialise command line analysis.
qacsa_m3cm.exe Secondary-analyser program.
qacsa_m3cm.exe.return_codes Secondary-analyser program configuration.
m3cm\messages
qac.usr.m3cm User message file.
nnnn.html Replacement HTML help files which supplement standard QA C help text with cross-references to MISRA C:2012 rules.
rule*.html HTML files which outline the implementation details of each MISRA C:2012 rule. These are referenced by the HTML Annotated Source and serve as an online reference to the MISRA C:2012 standard.
m3cm\doc
M3CM-1.0-QAC-8.1.2-Coding_Standard_Manual.html Manual for coding standard.
M3CM-1.0-QAC-8.1.2-Coding_Standard_Manual.pdf Manual for coding standard.
M3CM-1.0-QAC-8.1.2-Coding_Standard_Review.html Coding standard review document.
M3CM-1.0-QAC-8.1.2-QAC_Message_Usage_Summary.html Summary of usage of QAC messages.
M3CM-1.0-QAC-8.1.2-QAC_Message_Usage_Summary.pdf Summary of usage of QAC messages.
M3CM-1.0-QAC-8.1.2-Release_Notes.html Release notes.
M3CM-1.0-QAC-8.1.2-Release_Notes.pdf Release notes.
M3CM-1.0-QAC-8.1.2-Rule_Enforcement.html Rule enforcement report.
M3CM-1.0-QAC-8.1.2-Rule_Enforcement.pdf Rule enforcement report.
M3CM-1.0-QAC-8.1.2-Rule_Xreference.html Compliance matrix.
M3CM-1.0-QAC-8.1.2-Rule_Xreference.pdf Compliance matrix.
M3CM-1.0-QAC-8.1.2-User_Guide.html M3CM user guide.
M3CM-1.0-QAC-8.1.2-User_Guide.pdf M3CM user guide.
M3CM-1.0-QAC-8.1.2-Win-Installation_Notes.html Installation notes.
M3CM-1.0-QAC-8.1.2-Win-Installation_Notes.pdf Installation notes.
m3cm\personalities
m3cm.p_s Message personality.
m3cm.p_a Analyser personality.
m3cm.p_c Compiler personality.
m3cm\projects\m3cm_examples\*
Directory containing example source directory, personalities and output directory. NB some compliance modules do not have a projects directory.

Personality Files

Personality files are provided in the m3cm\person directory. Of these the message personality is key, it restricts the generation of messages to those which are relevant to the enforcement of the MISRA C:2012 rules. The analyser and compiler personality personalities also perform significant roles.

Secondary-Analysis Program

Where rules are not enforceable directly by QA C, additional checks may be provided through a secondary-analysis program. The M3CM secondary-analysis program qacsa_m3cm is located in the m3cm\bin directory.

User Message File

The M3CM user message file qac.usr.m3cm is located in the m3cm\messages directory. It defines a new message structure, new messages and cross reference information.

HTML files

The m3cm\messages directory contains replacement HTML files which provide cross-reference links from a message to the MISRA C:2012 rules.

Global Checks Report

Where coding standard rules impose constraints on the code of the complete project rather than the code in a single translation unit, coding standard enforcement is achieved using the Cross Module Analysis capability of the QA C product. CMA reports violations of project wide rules.


PRQA and the PRQA logo are registered trademarks of Programming Research.
QA C and QA C++ are trademarks of Programming Research.
All other products or services mentioned in this document are covered by the trademarks, service marks, or product names as designated by the companies who market those products or services.