Once the executed process has been captured, kwinject can either dump the received information into a build trace for later use, as described in Using a build trace to troubleshoot build specification problems, or parse the command line and convert it to one or more compile and link records for the build specification.
kwinject captures all commands in your build, but not all of them apply to Klocwork analysis. The ones that do (mostly compiler and linker commands) must be parsed, and their options and arguments must be transformed so that they are understandable by the engine. To decide which commands to parse and how to parse their associated options and arguments, kwinject uses the following configuration files:
- compiler filter files (*_filter.py). These files contain a list of rules for parsing the command line. See the --config option for kwinject.
- the compiler mapping file (kwfilter.conf). This file contains a list of commands to parse and references specific compiler filter files.