CMSIS-Build  Version 0.10.0 (beta)
Tools, software frameworks, and work flows for productivity with CMSIS based projects
 All Pages
ccmerge: Config File Updater

ccmerge supports the update process for configuration files that use Configuration Wizard Annotations. The tool takes the configuration file located in the CMSIS-Pack (pfile) and merges the configuration information extracted from the configuration file located in the current project (cfile). If the merge succeeds, the result is written to 'cfile' after a copy of 'cfile' has been stored as 'cfile.nnnn'.

Note
ccmerge currently only works with Make.

Invocation

ccmerge is called from the Bash command line with the following syntax:

ccmerge -pfile <name_of_pack_cfgfile> -cfile <name_of_current_cfgfile> [-merge] [-details]

Operation

Option Description
-pfile <name_of_pack_cfgfile> File path of the configuration file from a pack
-cfile <name_of_current_cfgfile> File path of the current config file in a project
-merge Execute merge: the current 'cfile' will be saved as 'cfile.nnnn' then 'cfile' will be updated and overwritten.
-details Create a log file: the name will be that of 'cfile' with an extension '.mlog' added to 'cfile'. The log file will contain info about merged items and their location or warning and error messages when processing fails.

When -details is specified without -merge, then an .mlog file will be created that shows the differences of the config values but no actual merge takes place.

When ccmerge detects that 'cfile' and 'pfile' are incompatible, then an error message is shown and the merge is aborted.

Note
A file's path name can be specified without surrounding " characters as long as it does not contain any spaces or other special characters. It must be enclosed by " characters when the path name contains one or more spaces or other special characters.

Usage Example

ccmerge -pfile $CMSIS_PACK_ROOT/ARM/CMSIS/5.6.0/CMSIS/RTOS2/RTX/Config/RTX_Config.h -cfile RTE/CMSIS/RTX_Config.h -merge

Error Messages

Type Message Action
ERROR -cfile - missing filename See usage and correct the argument.
ERROR -cfile: duplicate specification See usage and correct the argument.
ERROR -pfile - missing filename See usage and correct the argument.
ERROR -pfile: duplicate specification See usage and correct the argument.
ERROR unknown command option See usage and correct the argument.
ERROR Error - cannot open s file Check input files.
ERROR Error - different types of configuration options Check input files.
ERROR Error: vector.AddCitem() failed - out of memory. Ensure you have enough memory available.
ERROR FATAL-ERROR: Out of Memory Ensure you have enough memory available.
ERROR ccmerge failed, d Error(s) found. Check log file.
WARNING ccmerge command line warning: duplicate '-s' ignored See usage and correct the argument.
INFO Note: '-merge' not specified, checking files only. For information only.
INFO Note: no config annotations in pfile For information only.
INFO Note: no config annotations in cfile For information only.
INFO ccmerge completed, 0 Error(s), 0 Warning(s), 'cfile' left unchanged. For information only.
INFO ccmerge completed, d Error(s), d Warning(s), d items merged. For information only.