![]() |
CMSIS-Pack
Version 1.4.7
Delivery Mechanism for Software Packs
|
The purpose of this file format is the environment/tool independant definition of a software project. Environment specific project formats shall be derived from this description in a one time creation step. The CPDSC file is considered static and there is no expectation to keep the projects synchronized.
The scope of the project description includes:
The project format only creates a basic project configuration and does not reflect tool specific features and configuration options.
The import and conversion from the CPDSC format into a toolchain specific format is the responsibility of the tool vendor ensuring that updates and changes in the tool specific project format will be managed appropriately.
A CMSIS software project is a collection of files in a directory structure described by a CPDSC file. The CPDSC file is located in the base folder of the directory structure. There is only one CPDSC file contained in the project directory structure. A CPDSC file contains one or more related project descriptions.
Example CMSIS Project Description File (*.CPDSC):
The CPDSC file format shares the schema file (PACK.xsd) with PDSC and GPDSC, however a CPDSC file can only contain the following top level elements:
/CPDSC package
Parents | Element Chain | ||
---|---|---|---|
root | description root point | ||
Attributes | Description | Type | Use |
schemaVersion | version of PACK.xsd the description is compatible with | VersionType | required |
Child Elements | Description | Type | Occurrence |
name | file name of the CPDSC file | RestrictedString | <1> |
vendor | creator/owner of the CPDSC file | RestrictedString | <1> |
description | high level description of the project(s) | xs:string | <1> |
url | file location if generated, link to the PACK this file belongs to | xs:anyURI | <1> |
supportContact | email or web page for reporting errors or problems related to this project | xs:string | <0..1> |
license | reference to a license file relative to this CPDSC | xs:string | <0..1> |
releases | release history and release notes for tracking changes to this project | ReleasesType | <1> |
requirements | specifies required packs, compiler and programming languages for the project | RequirementsType | <1> |
create | section capturing the project configuration | CreateType | <1> |