6.1.2.9. IARIntegration

Use IAR Embedded Workbench project file (.ewp/.eww) for analysis compilation

This rule uses an IAR Embedded Workbench project file (.ewp) or an IAR Embedded Workbench workspace file (.eww) for the analysis compilation and corresponds to the command-line tool build_ewp.

A corresponding IARToolchain has to be configured.

Options

The following places define options that affect this rule: BuildSystemIntegration, Project-GlobalOptions

abort_on_error

abort_on_error : bool = True

If set to true and the build step returns a non-zero exit-code, the build is aborted. Otherwise a non-zero exit-code is logged but the build continues.
 

capture_output

capture_output : bool = False

Sets whether the shell output of the step should be captured. Note that only the output of the build step will be captured and not the output of possible clean steps.

The output will be parsed according to the format configured with the options output_format, stdout_format, stderr_format.

 

config

config : str = 'Release'

Configuration to analyze.

 

cwd

cwd : bauhaus.analysis.config.ProjectRelativePath | None = None

Directory for execution of tool build_ewp. Defaults to /Project/directory, if left unspecified.

 

environment

environment : dict[str, str] = {}

Environment for calling tool build_ewp. These entries are added to the environment and existing ones will be overwritten.

 

ew_dir

ew_dir : bauhaus.analysis.config.PlainPath | None = None

Location of the Embedded Workbench directory (required for expansion of project file variable $EW_DIR$ if not detected via Windows registry).

 

ewp_file

ewp_file : bauhaus.analysis.config.PlainPath | None = None

Location of the IAR Embedded Workbench project file (.ewp) to use for analysis compilation (interpreted relative to /Project/directory, or cwd if set).

If specified, only this project will be built, regardless of whether eww_file is specified as well.

If not specified, then eww_file must be specified in which case all projects in the workspace will be built.

 

eww_file

eww_file : bauhaus.analysis.config.PlainPath | None = None

Location of the IAR Embedded Workbench workspace file (.eww) to use for analysis compilation (interpreted relative to /Project/directory, or cwd if set).

If not specified, project file variable $WS_DIR$ cannot be expanded.

 

iarbuild_toolname

iarbuild_toolname : bauhaus.analysis.config.PlainPath | None = None

Location of the iarbuild tool. If set, the build uses this iarbuild to create an intermediate jsondb and implicitly uses build_compile_commands to run the build instead of using build_ewp.

When enabling this mode of operation, all options except for ewp_file and config are ignored. Also the output IR filename will have the suffix .ir appended, so that you will have to adjust /Project/ir accordingly.

 

options

options : str | None = None

Additional command-line options to pass to tool build_ewp.

 

output_directory_prefix

output_directory_prefix : bauhaus.analysis.config.PlainPath | None = None

Append prefix to output directory structure.

 

output_format

output_format : list[str] = ['generic']

Name of the format(s) describing the output pattern to capture from stdout/stderr.

The format names available here correspond to the provider options in /Analysis/AnalysisControl/ExternalAnalysisFormats.

This option only has an effect if capture_output is true.

 

stderr_format

stderr_format : list[str] = []

Name of the format(s) describing the output pattern to capture from stderr. This takes precedence over output_format if set.

The format names available here correspond to the provider options in /Analysis/AnalysisControl/ExternalAnalysisFormats.

This option only has an effect if capture_output is true.

 

stdout_format

stdout_format : list[str] = []

Name of the format(s) describing the output pattern to capture from stdout. This takes precedence over output_format if set.

The format names available here correspond to the provider options in /Analysis/AnalysisControl/ExternalAnalysisFormats.

This option only has an effect if capture_output is true.

 

toolkit_dir

toolkit_dir : bauhaus.analysis.config.PlainPath | None = None

Location of IAR Toolkit directory (required for expansion of project file variable $TOOLKIT_DIR$).