summaryrefslogtreecommitdiff
path: root/CMSIS/Documentation/Pack/html/pdsc_conditions_pg.html
blob: 9c2692eaefbf7ea17301fc311a5c5fbce5d4e4c5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>/package/conditions element</title>
<title>CMSIS-Pack: /package/conditions element</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="cmsis.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="printComponentTabs.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="stylsheetf" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 46px;">
  <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
  <td style="padding-left: 0.5em;">
   <div id="projectname">CMSIS-Pack
   &#160;<span id="projectnumber">Version 1.4.1</span>
   </div>
   <div id="projectbrief">Delivery Mechanism for Software Packs</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<div id="CMSISnav" class="tabs1">
    <ul class="tablist">
      <script type="text/javascript">
		<!--
		writeComponentTabs.call(this);
		//-->
      </script>
	  </ul>
</div>
<!-- Generated by Doxygen 1.8.2 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li class="current"><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('pdsc_conditions_pg.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="headertitle">
<div class="title">/package/conditions element </div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><p>The grouping element <a class="el" href="pdsc_conditions_pg.html#element_conditions">/package/conditions</a> contains all conditions defined for the <a class="el" href="_c_p__s_w_components.html">Software Pack</a>.</p>
<p>A condition describes dependencies on device, processor, and tool attributes as well as the presence of other components. The <b>conditions</b> are used to define AND and OR rules used to make components conditional and therefore only available under certain circumstances, e.g. for specific devices or processors. The conditions are also used to express dependencies between components.</p>
<p>Each condition has an <b>id</b> that is unique within the scope of a the description. An <b>id</b> can be referenced in the condition attribute of components, apis, examples, files and other conditions to become conditional. If a condition resolves to false during the processing of the description, the respective element will be ignored.</p>
<p><b>Example:</b> </p>
<div class="fragment"><div class="line">&lt;conditions&gt;</div>
<div class="line">  &lt;condition <span class="keywordtype">id</span>=<span class="stringliteral">&quot;CM4&quot;</span>&gt;                           &lt;!-- defines the condition with the ID <span class="stringliteral">&quot;CM4&quot;</span> --&gt;</div>
<div class="line">    &lt;description&gt;True <span class="keywordflow">if</span> the active device has a Cortex-M4 processor&lt;/description&gt;</div>
<div class="line">    &lt;require Dcore=<span class="stringliteral">&quot;Cortex-M4&quot;</span>/&gt;                 &lt;!-- device has a Cortex-M4 processor --&gt;</div>
<div class="line">  &lt;/condition&gt;</div>
<div class="line"></div>
<div class="line">  &lt;condition <span class="keywordtype">id</span>=<span class="stringliteral">&quot;Cortex-M&quot;</span>&gt;                      &lt;!-- defines the condition with the ID <span class="stringliteral">&quot;Cortex-M&quot;</span> --&gt;</div>
<div class="line">    &lt;description&gt;True <span class="keywordflow">if</span> the active device has a Cortex-M0 or Cortex-M0+ or Cortex-M3 or Cortex-M4 or SC000 or SC3000 processor &lt;/description&gt;</div>
<div class="line">    &lt;accept Dcore=<span class="stringliteral">&quot;Cortex-M0&quot;</span>/&gt;                  &lt;!-- any of the following cores will make the condition resolve to <span class="keyword">true</span> --&gt;</div>
<div class="line">    &lt;accept Dcore=<span class="stringliteral">&quot;Cortex-M0+&quot;</span>/&gt;</div>
<div class="line">    &lt;accept Dcore=<span class="stringliteral">&quot;Cortex-M3&quot;</span>/&gt;</div>
<div class="line">    &lt;accept Dcore=<span class="stringliteral">&quot;Cortex-M4&quot;</span>/&gt;</div>
<div class="line">    &lt;accept Dcore=<span class="stringliteral">&quot;SC000&quot;</span>/&gt;</div>
<div class="line">    &lt;accept Dcore=<span class="stringliteral">&quot;SC300&quot;</span>/&gt;</div>
<div class="line">  &lt;/condition&gt;</div>
<div class="line"></div>
<div class="line">  &lt;condition <span class="keywordtype">id</span>=<span class="stringliteral">&quot;CMSIS-CORE&quot;</span>&gt;                     &lt;!-- defines the condition with the ID <span class="stringliteral">&quot;CMSIS-CORE&quot;</span> --&gt;</div>
<div class="line">    &lt;description&gt;True <span class="keywordflow">if</span> the component Device Startup is selected and the device has a Cortex-M processor&lt;/description&gt;</div>
<div class="line">    &lt;require Cclass=<span class="stringliteral">&quot;Device&quot;</span> Cgroup=<span class="stringliteral">&quot;Startup&quot;</span>/&gt;   &lt;!-- needs a software component Device Startup AND ... --&gt;</div>
<div class="line">    &lt;require condition=<span class="stringliteral">&quot;Cortex-M&quot;</span>/&gt;               &lt;!-- ... needs that condition with ID=Cortex-M to be <span class="keyword">true</span>. --&gt;</div>
<div class="line">  &lt;/condition&gt;</div>
<div class="line"></div>
<div class="line">  &lt;condition <span class="keywordtype">id</span>=<span class="stringliteral">&quot;CMSIS-DSP&quot;</span>&gt;                      &lt;!-- defines the condition with the ID <span class="stringliteral">&quot;CMSIS-DSP&quot;</span> --&gt;</div>
<div class="line">    &lt;description&gt;True <span class="keywordflow">if</span> CMSIS-CORE == TRUE and either GCC or ARMCC and device running in little-endian byte ordering&lt;/description&gt;</div>
<div class="line">    &lt;require condition=<span class="stringliteral">&quot;CMSIS-CORE&quot;</span>/&gt;             &lt;!-- needs a software component Device Startup AND ... --&gt;</div>
<div class="line">    &lt;accept Tcompiler=<span class="stringliteral">&quot;GCC&quot;</span>/&gt;                     &lt;!-- ... works either with the GCC compiler OR ... --&gt;</div>
<div class="line">    &lt;accept Tcompiler=<span class="stringliteral">&quot;ARMCC&quot;</span>/&gt;                   &lt;!-- ... the ARMCC compiler AND ... --&gt;</div>
<div class="line">    &lt;require Dendian=<span class="stringliteral">&quot;Little-endian&quot;</span>/&gt;            &lt;!-- ... requires a device running in little-endian byte ordering --&gt;</div>
<div class="line">  &lt;/condition&gt;</div>
<div class="line"></div>
<div class="line">  &lt;condition <span class="keywordtype">id</span>=<span class="stringliteral">&quot;No STM32&quot;</span>&gt;                       &lt;!-- defines the condition with ID <span class="stringliteral">&quot;No STM32&quot;</span> --&gt;</div>
<div class="line">    &lt;description&gt;False <span class="keywordflow">if</span> the device is from ST and the device name starts with <span class="stringliteral">&quot;STM32&quot;</span>&lt;/description&gt;</div>
<div class="line">    &lt;deny Dvendor=<span class="stringliteral">&quot;STMicroelectronics:13&quot;</span> Dname=<span class="stringliteral">&quot;STM32*&quot;</span>/&gt;  &lt;!-- device name must not start with STM32 and be from vendor ST--&gt;</div>
<div class="line">  &lt;/condition&gt;</div>
<div class="line">&lt;/conditions&gt;</div>
</div><!-- fragment --><p>&#160;</p>
<hr/>
<h1><a class="anchor" id="element_conditions"></a>
/package/conditions</h1>
<p>This element groups all conditions used in the <a class="el" href="_c_p__s_w_components.html">Software Pack</a>.</p>
<table  class="cmtable" summary="Element: Conditions">
<tr>
<th>Parent </th><th colspan="3">Chain  </th></tr>
<tr>
<td><a class="el" href="pdsc_package_pg.html">package</a> </td><td colspan="3"><a class="el" href="pdsc_package_pg.html">/package</a>  </td></tr>
<tr>
<th>Child Elements </th><th>Description </th><th>Type </th><th>Occurrence  </th></tr>
<tr>
<td><a class="el" href="pdsc_conditions_pg.html#element_condition">condition</a> </td><td>Define the individual dependency condition. </td><td>xs:string </td><td>1..*  </td></tr>
</table>
<p>&#160;</p>
<hr/>
<h1><a class="anchor" id="element_condition"></a>
/package/conditions/condition</h1>
<p>Conditions are dependency rules that can apply to elements such as a <a class="el" href="pdsc_components_pg.html#element_component">component</a> or <a class="el" href="pdsc_components_pg.html#element_file">file</a>. Other elements can refer to a rule using their attribute <b>condition</b>, which links to the attribute <b>id</b> of a condition. If a condition resolves to <span class="XML-Token">false</span>, then the component or file description is ignored.</p>
<table  class="cmtable" summary="Element: Condition">
<tr>
<th>Parent </th><th colspan="3">Chain  </th></tr>
<tr>
<td><a class="el" href="pdsc_conditions_pg.html#element_conditions">conditions</a> </td><td colspan="3"><a class="el" href="pdsc_conditions_pg.html#element_conditions">/package/conditions</a>  </td></tr>
<tr>
<th>Attributes </th><th>Description </th><th>Type </th><th>Use  </th></tr>
<tr>
<td>id </td><td>Condition identifier which is unique within a <a class="el" href="_c_p__s_w_components.html">Software Pack</a>. The condition identifier is referenced by other elements with the attribute <b>condition</b>. </td><td>xs:string </td><td>required  </td></tr>
<tr>
<th>Child&#160;Elements </th><th>Description </th><th>Type </th><th>Occurrence  </th></tr>
<tr>
<td>description </td><td>Descriptive (comment) text that explains the condition in an human readable way. </td><td>xs:string </td><td>0..1  </td></tr>
<tr class="choice">
<td><a class="el" href="pdsc_conditions_pg.html#element_accept">accept</a><sup>1</sup> </td><td>At least one <a class="el" href="pdsc_conditions_pg.html#element_accept">accept</a> must be true to signal a true for the complete condition (<b>OR-Rule</b>) </td><td>FilterType </td><td>0..*  </td></tr>
<tr class="choice">
<td><a class="el" href="pdsc_conditions_pg.html#element_require">require</a><sup>1</sup> </td><td>All <a class="el" href="pdsc_conditions_pg.html#element_require">require</a> must be true to signal a true for the complete condition (<b>AND-Rule</b>). </td><td>FilterType </td><td>0..*  </td></tr>
<tr class="choice">
<td><a class="el" href="pdsc_conditions_pg.html#element_deny">deny</a><sup>1</sup> </td><td>If one <a class="el" href="pdsc_conditions_pg.html#element_deny">deny</a> is true the complete condition becomes false. This element overrules <a class="el" href="pdsc_conditions_pg.html#element_require">require</a> and <a class="el" href="pdsc_conditions_pg.html#element_accept">accept</a> (<b>AND-NOT-Rule</b>). </td><td>FilterType </td><td>0..*  </td></tr>
</table>
<dl class="section note"><dt>Note</dt><dd><b>1</b>: At least one of these elements must be present in any condition.</dd></dl>
<p>&#160;</p>
<hr/>
<h1><a class="anchor" id="element_accept"></a>
/package/conditions/condition/accept</h1>
<h1><a class="anchor" id="element_require"></a>
/package/conditions/condition/require</h1>
<h1><a class="anchor" id="element_deny"></a>
/package/conditions/condition/deny</h1>
<p>All attributes set in an <a class="el" href="pdsc_conditions_pg.html#element_accept">accept</a>, <a class="el" href="pdsc_conditions_pg.html#element_require">require</a>, or <a class="el" href="pdsc_conditions_pg.html#element_deny">deny</a> must resolve to true for the element to become true. A <a class="el" href="pdsc_conditions_pg.html#element_condition">condition</a> becomes <span class="XML-Token">true</span> when:</p>
<ul>
<li>At least one <a class="el" href="pdsc_conditions_pg.html#element_accept">accept</a> element is true, AND</li>
<li>all <a class="el" href="pdsc_conditions_pg.html#element_require">require</a> elements are true, AND</li>
<li>no <a class="el" href="pdsc_conditions_pg.html#element_deny">deny</a> element is true.</li>
</ul>
<table  class="cmtable" summary="Type: FilterType">
<tr>
<th>Parent </th><th colspan="3">Chain  </th></tr>
<tr>
<td><a class="el" href="pdsc_conditions_pg.html#element_condition">accept</a> </td><td colspan="3"><a class="el" href="pdsc_conditions_pg.html#element_condition">/package/conditions/condition/accept</a>  </td></tr>
<tr>
<td><a class="el" href="pdsc_conditions_pg.html#element_condition">require</a> </td><td colspan="3"><a class="el" href="pdsc_conditions_pg.html#element_condition">/package/conditions/condition/require</a>  </td></tr>
<tr>
<td><a class="el" href="pdsc_conditions_pg.html#element_condition">deny</a> </td><td colspan="3"><a class="el" href="pdsc_conditions_pg.html#element_condition">/package/conditions/condition/deny</a>  </td></tr>
<tr>
<th>Attributes </th><th>Description </th><th>Type </th><th>Use  </th></tr>
<tr>
<td>Dfamily<b>*</b> </td><td>Specifies the device family name (for example: STM32F2 Series). </td><td>xs:string </td><td>optional  </td></tr>
<tr>
<td>DsubFamily<b>*</b> </td><td>Specifies the device sub-family name (for example: STM32F205 Series). </td><td>xs:string </td><td>optional  </td></tr>
<tr>
<td>Dvariant<b>*</b> </td><td>Specifies the variant name of a device (for example: Step A). </td><td>xs:string </td><td>optional  </td></tr>
<tr>
<td>Dvendor </td><td>Specifies the silicon vendor of the device. Use predefined values as listed in the table <a class="el" href="pdsc_family_pg.html#DeviceVendorEnum">Device Vendor</a>. </td><td>DeviceVendorEnum </td><td>optional  </td></tr>
<tr>
<td>Dname<b>*</b> </td><td>Specifies the name of the device.  </td><td>xs:string </td><td>optional  </td></tr>
<tr>
<td>Pname </td><td>Specifies the processor instance in case of multi processor devices. This allows to describe distinct conditions for a specific processor. </td><td>xs:string </td><td>optional  </td></tr>
<tr>
<td>Dcore </td><td>Specifies a processor core. Use predefined values as listed in the table <a class="el" href="pdsc_family_pg.html#DcoreEnum">Device Cores</a>. </td><td>DcoreEnum </td><td>optional  </td></tr>
<tr>
<td>Dfpu </td><td>Specifies whether a Floating Point Unit (FPU) must be present or not. Predefined values can be uses as listed in the table <a class="el" href="pdsc_family_pg.html#DfpuEnum">Device FPU</a>. </td><td>DfpuEnum </td><td>optional  </td></tr>
<tr>
<td>Dmpu </td><td>Specifies whether a Memory Protection Unit (MPU) must be present or not. Predefined values can be uses as listed in the table <a class="el" href="pdsc_family_pg.html#DmpuEnum">Device MPU</a>. </td><td>DmpuEnum </td><td>optional  </td></tr>
<tr>
<td>Dendian </td><td>Specifies the endianess of a device. Use predefined values as listed in the table <a class="el" href="pdsc_family_pg.html#DendianEnum">Endianess</a>. </td><td>DendianEnum </td><td>optional  </td></tr>
<tr>
<td>Cvendor<b>*</b> </td><td>Specifies a component vendor name. </td><td>xs:string </td><td>optional  </td></tr>
<tr>
<td>Cbundle<b>*</b> </td><td>Specifies a component class bundle name. </td><td>xs:string </td><td>optional  </td></tr>
<tr>
<td>Cclass<b>*</b> </td><td>Specifies a component class name. Predefined values can be used as listed in the table <a class="el" href="element_taxonomy.html#CclassType">Component Classes</a>. </td><td>CclassType </td><td>optional  </td></tr>
<tr>
<td>Cgroup<b>*</b> </td><td>Specifies a software Component Group. Predefined values can be used as listed in the table <a class="el" href="element_taxonomy.html#CgroupType">Component Groups</a>. </td><td>CgroupType </td><td>optional  </td></tr>
<tr>
<td>Csub<b>*</b> </td><td>Specifies a software component subgroup. The type is described in <a class="el" href="pdsc_components_pg.html#CsubType">Component Subgroups</a>. </td><td>CsubType </td><td>optional  </td></tr>
<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>
<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>
</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>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>
</ul>
</td><td><a class="el" href="pdsc_package_pg.html#VersionType">VersionType</a> </td><td>optional  </td></tr>
<tr>
<td>Tcompiler </td><td>Specifies a compiler toolchain (ARMCC, GCC, IAR, Tasking, ...). Use predefined values as listed in table <a class="el" href="pdsc_conditions_pg.html#CompilerEnumType">Compiler Types</a>. </td><td>CompilerEnumType </td><td>optional  </td></tr>
<tr>
<td>condition </td><td>Refers to another condition identified through the attribute <em><b>id</b>.</em>  </td><td>xs:string </td><td>optional  </td></tr>
</table>
<p><b>*)</b> Wild-cards can be used to match names with the following defintions:</p>
<ul>
<li>'*' matches any substring</li>
<li>'?' matches any single character</li>
<li>[abc] matches any character in the set (a,b,c)</li>
</ul>
<p>&#160;</p>
<p><a class="anchor" id="CompilerEnumType"></a><b>Table: Compiler Types</b></p>
<p>The tale list values representing a C/C++ compiler toolchains from a specific tool vendor. The tokens can be used in the elements:</p>
<ul>
<li><a class="el" href="pdsc_conditions_pg.html#element_accept">/package/conditions/condition/accept</a></li>
<li><a class="el" href="pdsc_conditions_pg.html#element_require">/package/conditions/condition/require</a></li>
<li><a class="el" href="pdsc_conditions_pg.html#element_deny">/package/conditions/condition/deny</a></li>
</ul>
<table  class="cmtable" summary="Enumeration: CompilerEnumType">
<tr>
<th>Tcompiler= </th><th>Description  </th></tr>
<tr>
<td class="XML-Token">GCC </td><td>GNU Tools for ARM Embedded Processors. Refer to <a href="https://launchpad.net/gcc-arm-embedded/4.7" target="_blank">ARM GCC</a>.  </td></tr>
<tr>
<td class="XML-Token">G++ </td><td>Code Sourcery GCC compiler for C and C++ (is now Mentor Graphics CodeBench).  </td></tr>
<tr>
<td class="XML-Token">ARMCC </td><td>ARM compiler for C and C++. Refer to <a href="http://infocenter.arm.com/help/topic/com.arm.doc.subset.swdev.coretools/index.html" target="_blank">ARM Compiler from ARM</a>.  </td></tr>
<tr>
<td class="XML-Token">IAR </td><td>IAR compiler for C and C++.  </td></tr>
<tr>
<td class="XML-Token">Tasking </td><td>TASKING compiler for C and C++.  </td></tr>
<tr>
<td class="XML-Token">GHS </td><td>Green Hills Software compiler for C, C++, and EC++.  </td></tr>
</table>
<p>&#160;</p>
<hr/>
 </div></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="_pack_format.html">Pack Description (*.PDSC) Format</a></li>
    <li class="footer">Generated on Tue Oct 27 2015 14:35:43 for CMSIS-Pack by ARM Ltd. All rights reserved.
	<!--
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.2 
	-->
	</li>
  </ul>
</div>
</body>
</html>