Skip to content

Commit

Permalink
Update main documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
github-actions committed Jan 30, 2024
1 parent 5981d61 commit 8efba70
Show file tree
Hide file tree
Showing 4 changed files with 14 additions and 11 deletions.
2 changes: 1 addition & 1 deletion main/html/cmsis_footer.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
function writeFooter() {
document.write('Generated on Tue Jan 30 2024 05:42:48 for Open-CMSIS-Pack Version 1.7.30 by Arm Ltd. All rights reserved.');
document.write('Generated on Tue Jan 30 2024 11:35:34 for Open-CMSIS-Pack Version 1.7.30 by Arm Ltd. All rights reserved.');
};
2 changes: 1 addition & 1 deletion main/html/cp_PackTutorial.html
Original file line number Diff line number Diff line change
Expand Up @@ -415,7 +415,7 @@ <h2><a class="anchor" id="cp_RTEComponents_h"></a>
<dl class="section note"><dt>Note</dt><dd>The RTE_components.h file needs to be included somewhere in your source files. Refer to <a class="el" href="pdsc_components_pg.html#RTE_Components_h">RTE_Components.h</a> for more information.</dd></dl>
<h2><a class="anchor" id="cp_Bundles"></a>
Bundles</h2>
<p >A bundle is basically a variant on the <code>Cclass</code> level. It specifies the attributes <code>Cclass</code>, <code>Cversion</code> and optionally <code>Cgroup</code> and <code>Cvendor</code> for a collection of interdependent components. Components within a bundle inherit the attributes set by the bundle and must not set these attributes again. Bundles ensure consistency of attributes across multiple interworking components and restrict the mix and match of components within a <code>Cclass</code> from different solutions. In addition to components, a bundle has the mandatory elements <code>description</code> and <code>doc</code> (for documentation).</p>
<p >A bundle is a named set of components, introducing a kind of variant on the <code>Cclass</code> level. It specifies the attributes <code>Cvendor</code>, <code>Cclass</code> and <code>Cversion</code> for a collection of interdependent components. Components within a bundle inherit the attributes set by the bundle and except for <code>Cversion</code>, must not redefine these attributes. Bundles ensure consistency of attributes across multiple interworking components and restrict the mix and match of components within a <code>Cclass</code> from different solutions. In addition to components, a bundle has the mandatory elements <code>description</code> and <code>doc</code> (for documentation).</p>
<p >An example of a <b>bundle</b> is shown in the <a class="el" href="cp_PackTutorial.html#cp_BundleExample">Create a BSP Bundle</a> section where the bundle is used to deliver board support files for a certain development platform.</p>
<h2><a class="anchor" id="cp_Instances"></a>
Instances</h2>
Expand Down
9 changes: 5 additions & 4 deletions main/html/pdsc_components_pg.html
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@
</div><!--header-->
<div class="contents">
<div class="textblock"><p >The element <a class="el" href="pdsc_components_pg.html#element_components">/package/components</a> describes software components contained in the Pack. A component lists the files that belong to a component and that are relevant for a project. The component itself or each individual file may refer to a <a class="el" href="pdsc_conditions_pg.html#element_condition">condition</a> that must resolve to true; if it is false the component or file is not applicable in the given context.</p>
<p >Each component must have a class (Cclass=) and/or bundle (Cbundle), a group (Cgroup=), and a version (Cversion=) which is used to identify the component. Optionally, a component may have a sub-group (Csub=) and variant (Cvariant=) to add further categories. A component is identified by the class/bundle, group, sub-group, variant and version information together with the vendor specified by the pack. A component vendor must ensure that the combination of class/bundle, group, sub-group, version, and variant is unique and not used by multiple components (after evaluating filter <a class="el" href="pdsc_conditions_pg.html">conditions</a>).</p>
<p >Each component must have a class (Cclass=), a group (Cgroup=), and a version (Cversion=) which is used to identify the component. Optionally, a component may have a bundle (Cbundle=), sub-group (Csub=) and variant (Cvariant=) to add further categories. A component is identified by the class/bundle, group, sub-group, variant and version information together with the vendor specified by the pack. A component vendor must ensure that the combination of class/bundle, group, sub-group, version, and variant is unique and not used by multiple components (after evaluating filter <a class="el" href="pdsc_conditions_pg.html">conditions</a>).</p>
<p ><b>Example</b> </p><div class="fragment"><div class="line">&lt;package&gt;</div>
<div class="line"> ...</div>
<div class="line"> &lt;components&gt;</div>
Expand Down Expand Up @@ -192,7 +192,9 @@
</div><!-- fragment --><p >&#160;</p>
<h1><a class="anchor" id="Component_Bundle"></a>
Component Bundle</h1>
<p >In case multiple inter-dependent components that belong to the same <b>Cclass</b> form part of a solution, these can be grouped into a <em>bundle</em>. A <em>bundle</em> specifies identical attributes <b>Cclass</b>, <b>Cversion</b> and optionally <b>Cgroup</b> and <b>Cvendor</b> for several components. Components within a bundle inherit these attributes set by the bundle and cannot alter these attributes. Bundles ensure consistency of attributes across multiple interworking components and restrict the mix and match of components within a Cclass from different Software Packs.</p>
<p >In case multiple inter-dependent components that belong to the same <b>Cclass</b> form part of a solution, these can be grouped into a <em>bundle</em>. A component bundle is a named set of components that must share identical attributes for <b>Cvendor</b> and <b>Cclass</b> by introducing the attribute <b>Cbundle</b>, which becomes a mandatory part of the component ID. If the attribute <b>Cvendor</b> is not specified in the <b>bundle</b> element, the value is inherited from the pack level <b>vendor</b> element.</p>
<p >The attributes <b>Cvendor</b>, <b>Cclass</b>, <b>Cbundle</b> as well as <b>Cversion</b> are inherited by all <b>component</b> elements within a <b>bundle</b> section. Only the <b>Cversion</b> attribute can be redefined in the <b>component</b> elements.</p>
<p >Components of the same <b>Cclass</b> belonging to a different <b>Cbundle</b> shall not be selected concurrently. In this way bundles ensure interoperability across multiple components and restrict the mix and match of components within a <b>Cclass</b>.</p>
<p >An example of a <b>bundle</b> is shown in the <a class="el" href="cp_PackTutorial.html#cp_BundleExample">Create a BSP Bundle</a> section where the bundle is used to deliver board support files for a certain development platform.</p>
<h1><a class="anchor" id="Component_Files"></a>
Component Files</h1>
Expand Down Expand Up @@ -382,8 +384,7 @@ <h1><a class="anchor" id="element_component"></a>
<tr>
<td>Cvariant </td><td>Defines a variant of a component. Is an optional part of the component ID. The variant specifier is a brief string (for example: <span class="XML-Token">release</span>, <span class="XML-Token">debug</span>). </td><td>xs:string [1..32] </td><td>optional </td></tr>
<tr>
<td>Cversion </td><td>Defines the version of this component. Is a mandatory part of the component ID. The version format is described in <a class="el" href="pdsc_package_pg.html#VersionType">Version Type</a>. <br />
<span class="XML-Token">Must not be specified for a component within a bundle.</span> </td><td><a class="el" href="pdsc_package_pg.html#VersionType">VersionType</a> </td><td>required </td></tr>
<td>Cversion </td><td>Defines the version of this component. Is a mandatory part of the component ID. The version format is described in <a class="el" href="pdsc_package_pg.html#VersionType">Version Type</a>. </td><td><a class="el" href="pdsc_package_pg.html#VersionType">VersionType</a> </td><td>required </td></tr>
<tr>
<td>Capiversion </td><td>For components that are based on an <a class="el" href="pdsc_apis_pg.html">API header files</a>, it defines the version of the API used by this component. It ensures that the API header file with the same or higher version is acceptable for using that component. The version format is described in <a class="el" href="pdsc_package_pg.html#VersionType">Version Type</a>. </td><td>VersionType </td><td>optional </td></tr>
<tr>
Expand Down
12 changes: 7 additions & 5 deletions main/html/pdsc_conditions_pg.html
Original file line number Diff line number Diff line change
Expand Up @@ -257,17 +257,19 @@ <h1><a class="anchor" id="element_deny"></a>
<tr>
<td>Cvariant<b>*</b> </td><td>Specifies a software component variant. </td><td>xs:string </td><td>optional </td></tr>
<tr>
<td>Cversion </td><td>Specifies a software component version.<ul>
<li><b>require Cversion:</b>condition is true if version of component is equal or higher than requested.</li>
<td>Cversion </td><td>Specifies a software component's version.<ul>
<li><b>require Cversion:</b>condition is true if version of component is equal or higher than requested and compatible. According to <a href="https://semver.org/#spec-item-8"><b>SemanticVersioning</b></a> compatibility requires the <b>major version</b> to remain unchanged.</li>
<li><b>deny Cversion:</b> condition is true if version of component is lower than requested.</li>
<li>Version ranges are specified with <em>min_version</em><b>:</b><em>max_version</em>. The condition is true if the version of the component is equal or higher than <em>min_version</em> and lower or equal than <em>max_version</em>. If <em>min_version</em> and <em>max_version</em> are equal the version must match. For more information refer to <a class="el" href="pdsc_package_pg.html#VersionType">Version Type</a>. </li>
<li>Version ranges are specified with <em>min_version</em><b>:</b><em>max_version</em>. The condition is true if the version of the component is equal or higher than <em>min_version</em> and lower or equal than <em>max_version</em>. If <em>min_version</em> and <em>max_version</em> are equal the version must match exactly. Note: Specifying the <em>min_version</em> e.g <em>Cversion="4.1.0"</em> is identical to the version range <em>Cversion="4.1.0:5.0.0-0"</em>. <br />
</li>
</ul>
</td><td><a class="el" href="pdsc_package_pg.html#VersionType">VersionType</a> </td><td>optional </td></tr>
<tr>
<td>Capiversion </td><td>Specifies an API version.<ul>
<li><b>require Capiversion:</b>condition is true if version of API is equal or higher than requested.</li>
<li><b>require Capiversion:</b>condition is true if version of API is equal or higher than requested and compatible. According to <a href="https://semver.org/#spec-item-8"><b>SemanticVersioning</b></a> compatibility requires the <b>major version</b> to remain unchanged.</li>
<li><b>deny Capiversion:</b> condition is true if version of API is lower than requested.</li>
<li>Version ranges are specified with <em>min_version</em><b>:</b><em>max_version</em>. The condition is true if the version of the API is equal or higher than <em>min_version</em> and lower or equal than <em>max_version</em>. If <em>min_version</em> and <em>max_version</em> are equal the version must match. For more information refer to <a class="el" href="pdsc_package_pg.html#VersionType">Version Type</a>. </li>
<li>Version ranges are specified with <em>min_version</em><b>:</b><em>max_version</em>. The condition is true if the version of the API is equal or higher than <em>min_version</em> and lower or equal than <em>max_version</em>. If <em>min_version</em> and <em>max_version</em> are equal the version must match exactly. Note: Specifying the <em>min_version</em> e.g <em>Capiversion="4.1.0"</em> is identical to the version range <em>Capiversion="4.1.0:5.0.0-0"</em>. <br />
</li>
</ul>
</td><td><a class="el" href="pdsc_package_pg.html#VersionType">VersionType</a> </td><td>optional </td></tr>
<tr>
Expand Down

0 comments on commit 8efba70

Please sign in to comment.