source: rtems-eclipse-plug-in/org.rtems.cdt/plugin.xml @ 6c02638

Last change on this file since 6c02638 was 6c02638, checked in by Sebastian Huber <sebastian.huber@…>, on Nov 26, 2009 at 4:29:45 PM

Derive GCC based tools from new super class.
Fixed option filter.
Discard pipe option.

  • Property mode set to 100644
File size: 33.1 KB
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<?eclipse version="3.2"?>
3
4<!--
5  Copyright (c) 2008 Embedded Brains GmbH and others.
6
7    Embedded Brains GmbH
8    Obere Lagerstr. 30
9    D-82178 Puchheim
10    Germany
11    rtems@embedded-brains.de
12
13  All rights reserved.  This program and the accompanying materials are made
14  available under the terms of the Eclipse Public License Version 1.0 ("EPL")
15  which accompanies this distribution and is available at
16
17    http://www.eclipse.org/legal/epl-v10.html
18
19  For purposes of the EPL, "Program" will mean the Content.
20
21  Contributors:
22
23    Sebastian Huber (Embedded Brains GmbH) - Initial API and implementation.
24-->
25
26<plugin>
27   <!-- Scanner Configuration Discovery Profiles -->
28   <extension
29         id="RtemsSCDProfile"
30         name="RTEMS Scanner Configuration Discovery Profile"
31         point="org.eclipse.cdt.make.core.ScannerConfigurationDiscoveryProfile">
32      <scannerInfoCollector
33            class="org.eclipse.cdt.make.internal.core.scannerconfig2.PerProjectSICollector"
34            scope="project"/>
35      <buildOutputProvider>
36         <open/>
37         <scannerInfoConsoleParser class="org.eclipse.cdt.managedbuilder.internal.scannerconfig.ManagedGCCScannerInfoConsoleParser"/>
38      </buildOutputProvider>
39      <scannerInfoProvider providerId="specsFile">
40         <run
41               arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}"
42               class="org.rtems.cdt.build.RunScannerInfoProvider"/>
43         <scannerInfoConsoleParser class="org.eclipse.cdt.make.internal.core.scannerconfig.gnu.GCCSpecsConsoleParser"/>
44      </scannerInfoProvider>
45   </extension>
46   <extension
47         id="RtemsSCDProfileC"
48         name="RTEMS Scanner Configuration Discovery Profile"
49         point="org.eclipse.cdt.make.core.ScannerConfigurationDiscoveryProfile">
50      <scannerInfoCollector
51            class="org.eclipse.cdt.make.internal.core.scannerconfig2.PerProjectSICollector"
52            scope="project"/>
53      <buildOutputProvider>
54         <open/>
55         <scannerInfoConsoleParser class="org.eclipse.cdt.managedbuilder.internal.scannerconfig.ManagedGCCScannerInfoConsoleParser"/>
56      </buildOutputProvider>
57      <scannerInfoProvider providerId="specsFile">
58         <run
59               arguments="-E -P -v -dD ${plugin_state_location}/specs.c"
60               class="org.rtems.cdt.build.RunScannerInfoProvider"/>
61         <scannerInfoConsoleParser class="org.eclipse.cdt.make.internal.core.scannerconfig.gnu.GCCSpecsConsoleParser"/>
62      </scannerInfoProvider>
63   </extension>
64   <extension
65         id="RtemsSCDProfileCPP"
66         name="RTEMS Scanner Configuration Discovery Profile"
67         point="org.eclipse.cdt.make.core.ScannerConfigurationDiscoveryProfile">
68      <scannerInfoCollector
69            class="org.eclipse.cdt.make.internal.core.scannerconfig2.PerProjectSICollector"
70            scope="project"/>
71      <buildOutputProvider>
72         <open/>
73         <scannerInfoConsoleParser class="org.eclipse.cdt.managedbuilder.internal.scannerconfig.ManagedGCCScannerInfoConsoleParser"/>
74      </buildOutputProvider>
75      <scannerInfoProvider providerId="specsFile">
76         <run
77               arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp"
78               class="org.rtems.cdt.build.RunScannerInfoProvider"/>
79         <scannerInfoConsoleParser class="org.eclipse.cdt.make.internal.core.scannerconfig.gnu.GCCSpecsConsoleParser"/>
80      </scannerInfoProvider>
81   </extension>
82   <extension
83         id="RtemsSCDProfileWin"
84         name="RTEMS Scanner Configuration Discovery Profile (Windows)"
85         point="org.eclipse.cdt.make.core.ScannerConfigurationDiscoveryProfile">
86      <scannerInfoCollector
87            class="org.rtems.cdt.build.CygwinScannerInfoCollector"
88            scope="project"/>
89      <buildOutputProvider>
90         <open/>
91         <scannerInfoConsoleParser class="org.eclipse.cdt.managedbuilder.internal.scannerconfig.ManagedGCCScannerInfoConsoleParser"/>
92      </buildOutputProvider>
93      <scannerInfoProvider providerId="specsFile">
94         <run
95               arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}"
96               class="org.rtems.cdt.build.CygwinRunScannerInfoProvider"/>
97         <scannerInfoConsoleParser class="org.eclipse.cdt.make.internal.core.scannerconfig.gnu.GCCSpecsConsoleParser"/>
98      </scannerInfoProvider>
99   </extension>
100   <extension
101         id="RtemsSCDProfileWinC"
102         name="RTEMS Scanner Configuration Discovery Profile (Windows)"
103         point="org.eclipse.cdt.make.core.ScannerConfigurationDiscoveryProfile">
104      <scannerInfoCollector
105            class="org.rtems.cdt.build.CygwinScannerInfoCollector"
106            scope="project"/>
107      <buildOutputProvider>
108         <open/>
109         <scannerInfoConsoleParser class="org.eclipse.cdt.managedbuilder.internal.scannerconfig.ManagedGCCScannerInfoConsoleParser"/>
110      </buildOutputProvider>
111      <scannerInfoProvider providerId="specsFile">
112         <run
113               arguments="-E -P -v -dD ${plugin_state_location}/specs.c"
114               class="org.rtems.cdt.build.CygwinRunScannerInfoProvider"/>
115         <scannerInfoConsoleParser class="org.eclipse.cdt.make.internal.core.scannerconfig.gnu.GCCSpecsConsoleParser"/>
116      </scannerInfoProvider>
117   </extension>
118   <extension
119         id="RtemsSCDProfileWinCPP"
120         name="RTEMS Scanner Configuration Discovery Profile (Windows)"
121         point="org.eclipse.cdt.make.core.ScannerConfigurationDiscoveryProfile">
122      <scannerInfoCollector
123            class="org.rtems.cdt.build.CygwinScannerInfoCollector"
124            scope="project"/>
125      <buildOutputProvider>
126         <open/>
127         <scannerInfoConsoleParser class="org.eclipse.cdt.managedbuilder.internal.scannerconfig.ManagedGCCScannerInfoConsoleParser"/>
128      </buildOutputProvider>
129      <scannerInfoProvider providerId="specsFile">
130         <run
131               arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp"
132               class="org.rtems.cdt.build.CygwinRunScannerInfoProvider"/>
133         <scannerInfoConsoleParser class="org.eclipse.cdt.make.internal.core.scannerconfig.gnu.GCCSpecsConsoleParser"/>
134      </scannerInfoProvider>
135   </extension>
136
137   <!-- Build Definitions -->
138   <extension
139         id="org.rtems.cdt.build"
140         point="org.eclipse.cdt.managedbuilder.core.buildDefinitions">
141
142      <!-- Configuration -->
143      <configuration
144            id="org.rtems.cdt.config.base"
145            name="RTEMS Configuration"
146            cleanCommand="rm -rf"
147            artifactExtension="exe">
148         <enablement type="CONTAINER_ATTRIBUTE"
149               attribute="artifactExtension"
150               value="a"
151               extensionAdjustment="false">
152            <checkBuildProperty
153                  property="org.eclipse.cdt.build.core.buildArtefactType"
154                  value="org.eclipse.cdt.build.core.buildArtefactType.staticLib"/>
155         </enablement>
156      </configuration>
157
158      <!-- Tools -->
159      <tool
160            id="org.rtems.cdt.tool.gcc"
161            isAbstract="true"
162            commandLineGenerator="org.rtems.cdt.build.CommandLineGenerator"
163            errorParsers="org.eclipse.cdt.core.GCCErrorParser"
164            name="RTEMS GCC"
165            natureFilter="both"
166            outputFlag="-o">
167         <supportedProperties>
168            <property id="org.eclipse.cdt.build.core.buildType">
169               <value id="org.eclipse.cdt.build.core.buildType.debug"/>
170               <value id="org.eclipse.cdt.build.core.buildType.release"/>
171            </property>
172         </supportedProperties>
173         <outputType
174               buildVariable="OBJS"
175               id="org.rtems.tool.gcc.output"
176               outputs="o"/>
177         <optionCategory
178               name="Preprocessor"
179               id="org.rtems.cdt.tool.gcc.category.preprocessor"/>
180         <option
181               id="org.rtems.cdt.tool.gcc.option.preprocessorflags"
182               name="Preprocessor flags"
183               category="org.rtems.cdt.tool.gcc.category.preprocessor"
184               valueType="string"/>
185         <option
186               id="org.rtems.cdt.tool.gcc.option.nostdinc"
187               name="Do not search standard system include directories (-nostdinc)"
188               category="org.rtems.cdt.tool.gcc.category.preprocessor"
189               command="-nostdinc"
190               valueType="boolean"
191               defaultValue="false"/>
192         <option
193               id="org.rtems.cdt.tool.gcc.option.i"
194               name="Include paths (-I)"
195               category="org.rtems.cdt.tool.gcc.category.preprocessor"
196               command="-I"
197               valueType="includePath"
198               browseType="directory"/>
199         <option
200               id="org.rtems.cdt.tool.gcc.option.d"
201               name="Defined symbols (-D)"
202               category="org.rtems.cdt.tool.gcc.category.preprocessor"
203               command="-D"
204               valueType="definedSymbols"/>
205         <option
206               id="org.rtems.cdt.tool.gcc.option.u"
207               name="Undefined symbols (-U)"
208               category="org.rtems.cdt.tool.gcc.category.preprocessor"
209               command="-U"
210               valueType="undefDefinedSymbols"/>
211         <optionCategory
212               id="org.rtems.cdt.tool.gcc.category.optimization"
213               name="Optimization"/>
214         <option
215               id="org.rtems.cdt.tool.gcc.option.optimizationflags"
216               name="Optimization flags"
217               category="org.rtems.cdt.tool.gcc.category.optimization"
218               valueType="string"/>
219         <option
220               id="org.rtems.cdt.tool.gcc.option.olevel"
221               name="Optimization level"
222               category="org.rtems.cdt.tool.gcc.category.optimization"
223               valueType="enumerated">
224            <enumeratedOptionValue
225                  id="org.rtems.cdt.tool.gcc.option.os"
226                  name="Optimize space (-Os)"
227                  command="-Os"
228                  isDefault="true"/>
229            <enumeratedOptionValue
230                  id="org.rtems.cdt.tool.gcc.option.o0"
231                  name="None (-O0)"
232                  command="-O0"/>
233            <enumeratedOptionValue
234                  id="org.rtems.cdt.tool.gcc.option.o1"
235                  name="Optimize (-O1)"
236                  command="-O1"/>
237            <enumeratedOptionValue
238                  id="org.rtems.cdt.tool.gcc.option.o2"
239                  name="Optimize more (-O2)"
240                  command="-O2"/>
241            <enumeratedOptionValue
242                  id="org.rtems.cdt.tool.gcc.option.o3"
243                  name="Optimize most (-O3)"
244                  command="-O3"/>
245            <enablement 
246                  type="CONTAINER_ATTRIBUTE" 
247                  attribute="defaultValue" 
248                  value="org.rtems.cdt.tool.gcc.option.os"
249                  extensionAdjustment="false">
250               <checkBuildProperty 
251                     property="org.eclipse.cdt.build.core.buildType"
252                     value="org.eclipse.cdt.build.core.buildType.release"/>
253            </enablement>
254            <enablement 
255                  type="CONTAINER_ATTRIBUTE" 
256                  attribute="defaultValue" 
257                  value="org.rtems.cdt.tool.gcc.option.o0"
258                  extensionAdjustment="false">
259               <checkBuildProperty 
260                     property="org.eclipse.cdt.build.core.buildType"
261                     value="org.eclipse.cdt.build.core.buildType.debug"/>
262            </enablement>
263         </option>
264         <option
265               id="org.rtems.cdt.tool.gcc.option.fnoinline"
266               name="Disable function inlining (-fno-inline)"
267               category="org.rtems.cdt.tool.gcc.category.optimization"
268               command="-fno-inline"
269               valueType="boolean"/>
270         <optionCategory
271               id="org.rtems.cdt.tool.gcc.category.debugging"
272               name="Debugging"/>
273         <option
274               id="org.rtems.cdt.tool.gcc.option.debuggingflags"
275               name="Debugging flags"
276               category="org.rtems.cdt.tool.gcc.category.debugging"
277               valueType="string"/>
278         <option
279               id="org.rtems.cdt.tool.gcc.option.glevel"
280               name="Debug level"
281               category="org.rtems.cdt.tool.gcc.category.debugging"
282               valueType="enumerated">
283            <enumeratedOptionValue
284                     id="org.rtems.cdt.tool.gcc.option.gnone"
285                     name="None"/>
286            <enumeratedOptionValue
287                     id="org.rtems.cdt.tool.gcc.option.g1"
288                     name="Minimal (-g1)"
289                     command="-g1"/>
290            <enumeratedOptionValue
291                     id="org.rtems.cdt.tool.gcc.option.g"
292                     name="Default (-g)"
293                     command="-g"
294                     isDefault="true"/>
295            <enumeratedOptionValue
296                     id="org.rtems.cdt.tool.gcc.option.g3"
297                     name="Maximal (-g3)"
298                     command="-g3"/>
299         </option>
300         <option
301               id="org.rtems.cdt.tool.gcc.option.finstrumentfunctions"
302               name="Instrument function entry and exit with profiling calls (-finstrument-functions)"
303               category="org.rtems.cdt.tool.gcc.category.debugging"
304               command="-finstrument-functions"
305               valueType="boolean"/>
306         <option
307               id="org.rtems.cdt.tool.gcc.option.p"
308               name="Enable function profiling (-p)"
309               category="org.rtems.cdt.tool.gcc.category.debugging"
310               command="-p"
311               valueType="boolean"/>
312         <optionCategory
313               id="org.rtems.cdt.tool.gcc.category.warnings"
314               name="Warnings"/>
315         <option
316               id="org.rtems.cdt.tool.gcc.option.warningflags"
317               name="Warning flags"
318               category="org.rtems.cdt.tool.gcc.category.warnings"
319               valueType="string"/>
320         <option
321               id="org.rtems.cdt.tool.gcc.option.wall"
322               name="Print default warnings (-Wall)"
323               category="org.rtems.cdt.tool.gcc.category.warnings"
324               command="-Wall"
325               valueType="boolean"
326               defaultValue="true"/>
327         <option
328               id="org.rtems.cdt.tool.gcc.option.wextra"
329               name="Print extra (possibly unwanted) warnings (-Wextra)"
330               category="org.rtems.cdt.tool.gcc.category.warnings"
331               command="-Wextra"
332               valueType="boolean"/>
333         <option
334               id="org.rtems.cdt.tool.gcc.option.werror"
335               name="Warnings are errors (-Werror)"
336               category="org.rtems.cdt.tool.gcc.category.warnings"
337               command="-Werror"
338               valueType="boolean"/>
339         <option
340               id="org.rtems.cdt.tool.gcc.option.pedantic"
341               name="Issue warnings needed for strict compliance to the standard (-pedantic)"
342               category="org.rtems.cdt.tool.gcc.category.warnings"
343               command="-pedantic"
344               valueType="boolean"/>
345         <option
346               id="org.rtems.cdt.tool.gcc.option.pedanticerrors"
347               name="Like -pedantic but issue them as errors (-pedantic-errors)"
348               category="org.rtems.cdt.tool.gcc.category.warnings"
349               command="-pedantic-errors"
350               valueType="boolean"/>
351         <option
352               id="org.rtems.cdt.tool.gcc.option.fsyntaxonly"
353               name="Check for syntax errors, then stop (-fsyntax-only)"
354               category="org.rtems.cdt.tool.gcc.category.warnings"
355               command="-fsyntax-only"
356               valueType="boolean"/>
357         <option
358               id="org.rtems.cdt.tool.gcc.option.w"
359               name="Suppress warnings (-w)"
360               category="org.rtems.cdt.tool.gcc.category.warnings"
361               command="-w"
362               valueType="boolean"/>
363         <optionCategory
364               id="org.rtems.cdt.tool.gcc.category.misc"
365               name="Miscellaneous"/>
366         <option
367               id="org.rtems.cdt.tool.gcc.option.otherflags"
368               name="Other flags"
369               category="org.rtems.cdt.tool.gcc.category.misc"
370               valueType="string"/>
371         <option
372               id="org.rtems.cdt.tool.gcc.option.c"
373               name="Compile and assemble, but do not link (-c)"
374               category="org.rtems.cdt.tool.gcc.category.misc"
375               command="-c"
376               valueType="boolean"
377               defaultValue="true"/>
378         <option
379               id="org.rtems.cdt.tool.gcc.option.messagelength0"
380               name="Suppress line-wrapping (-fmessage-length=0)"
381               category="org.rtems.cdt.tool.gcc.category.misc"
382               command="-fmessage-length=0"
383               valueType="boolean"
384               defaultValue="true"/>
385         <option
386               id="org.rtems.cdt.tool.gcc.option.pipe"
387               name="Use pipes rather than intermediate files (-pipe)"
388               category="org.rtems.cdt.tool.gcc.category.misc"
389               command="-pipe"
390               valueType="boolean"
391               defaultValue="true"/>
392         <option
393               id="org.rtems.cdt.tool.gcc.option.savetemps"
394               name="Do not delete intermediate files (-save-temps)"
395               category="org.rtems.cdt.tool.gcc.category.misc"
396               command="-save-temps"
397               valueType="boolean"/>
398         <option
399               id="org.rtems.cdt.tool.gcc.option.v"
400               name="Verbose (-v)"
401               category="org.rtems.cdt.tool.gcc.category.misc"
402               command="-v"
403               valueType="boolean"/>
404         <option
405               id="org.rtems.cdt.tool.gcc.option.b"
406               name="Search paths (-B)"
407               category="org.rtems.cdt.tool.gcc.category.misc"
408               command="-B"
409               valueType="includePath"
410               browseType="directory"/>
411      </tool>
412
413      <!-- Toolchain (Standard) -->
414      <toolChain
415            archList="all"
416            configurationEnvironmentSupplier="org.rtems.cdt.build.EnvironmentSupplier"
417            id="org.rtems.cdt.toolchain"
418            name="RTEMS Toolchain"
419            osList="all"
420            scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfile"
421            targetTool="org.rtems.cdt.linker.c;org.rtems.cdt.linker.cpp;org.rtems.cdt.archiver">
422         <targetPlatform
423            id="org.rtems.cdt.target"
424            name="RTEMS Target"
425            binaryParser="org.eclipse.cdt.core.ELF"
426            osList="all"
427            archList="all">
428         </targetPlatform>
429         <builder
430               id="org.rtems.cdt.builder"
431               superClass="cdt.managedbuild.target.gnu.builder"/>
432         <tool
433               id="org.rtems.cdt.compiler.c"
434               name="RTEMS C Compiler"
435               superClass="org.rtems.cdt.tool.gcc">
436            <inputType
437                  id="org.rtems.cdt.compiler.input.c"
438                  dependencyCalculator="org.eclipse.cdt.managedbuilder.makegen.gnu.DefaultGCCDependencyCalculator2"
439                  dependencyContentType="org.eclipse.cdt.core.cHeader"
440                  dependencyExtensions="h"
441                  languageId="org.eclipse.cdt.core.gcc"
442                  scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileC"
443                  sourceContentType="org.eclipse.cdt.core.cSource"
444                  sources="c"/>
445         </tool>
446         <tool
447               id="org.rtems.cdt.compiler.cpp"
448               name="RTEMS C++ Compiler"
449               superClass="org.rtems.cdt.tool.gcc">
450            <inputType
451                  id="org.rtems.cdt.compiler.cpp.input"
452                  dependencyCalculator="org.eclipse.cdt.managedbuilder.makegen.gnu.DefaultGCCDependencyCalculator2"
453                  dependencyContentType="org.eclipse.cdt.core.cxxHeader"
454                  dependencyExtensions="h,H,hpp"
455                  languageId="org.eclipse.cdt.core.g++"
456                  scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileCPP"
457                  sourceContentType="org.eclipse.cdt.core.cxxSource"
458                  sources="c,C,cc,cxx,cpp"/>
459         </tool>
460         <tool
461               commandLineGenerator="org.rtems.cdt.build.CommandLineGenerator"
462               id="org.rtems.cdt.linker.c"
463               name="RTEMS Linker"
464               superClass="cdt.managedbuild.tool.gnu.c.linker">
465            <enablement type="ALL">
466               <not>
467                  <checkBuildProperty
468                     property="org.eclipse.cdt.build.core.buildArtefactType"
469                     value="org.eclipse.cdt.build.core.buildArtefactType.staticLib"/>
470               </not>
471            </enablement>
472         </tool>
473         <tool
474               id="org.rtems.cdt.assembler.gcc"
475               name="RTEMS Assembler"
476               superClass="org.rtems.cdt.tool.gcc">
477            <inputType
478                  id="org.rtems.cdt.assembler.gcc.input"
479                  dependencyCalculator="org.eclipse.cdt.managedbuilder.makegen.gnu.DefaultGCCDependencyCalculator2"
480                  dependencyContentType="org.eclipse.cdt.core.cHeader"
481                  dependencyExtensions="h"
482                  languageId="org.eclipse.cdt.core.gcc"
483                  scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileC"
484                  sourceContentType="org.eclipse.cdt.core.asmSource"
485                  sources="s,S"/>
486         </tool>
487         <tool
488               commandLineGenerator="org.rtems.cdt.build.CommandLineGenerator"
489               id="org.rtems.cdt.assembler"
490               name="RTEMS Bare Assembler"
491               superClass="cdt.managedbuild.tool.gnu.assembler">
492            <inputType
493                  id="org.rtems.cdt.assembler.input"
494                  superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
495         </tool>
496         <tool
497               commandLineGenerator="org.rtems.cdt.build.CommandLineGenerator"
498               id="org.rtems.cdt.archiver"
499               name="RTEMS Archiver"
500               superClass="cdt.managedbuild.tool.gnu.archiver">
501            <enablement type="ALL">
502               <checkBuildProperty
503                     property="org.eclipse.cdt.build.core.buildArtefactType"
504                     value="org.eclipse.cdt.build.core.buildArtefactType.staticLib"/>
505            </enablement>
506         </tool>
507         <tool
508               commandLineGenerator="org.rtems.cdt.build.CommandLineGenerator"
509               id="org.rtems.cdt.linker.cpp"
510               name="RTEMS C++ Linker"
511               superClass="cdt.managedbuild.tool.gnu.cpp.linker">
512            <enablement type="ALL">
513               <not>
514               <checkBuildProperty
515                     property="org.eclipse.cdt.build.core.buildArtefactType"
516                     value="org.eclipse.cdt.build.core.buildArtefactType.staticLib"/>
517               </not>
518            </enablement>
519         </tool>
520      </toolChain>
521
522      <!-- Toolchain (Cygwin) -->
523      <toolChain
524            id="org.rtems.cdt.toolchain.cygwin"
525            name="RTEMS Toolchain (Cygwin)"
526            archList="all"
527            osList="win32"
528            targetTool="org.rtems.cdt.linker.c.cygwin;org.rtems.cdt.linker.cpp.cygwin;org.rtems.cdt.archiver.cygwin"
529            configurationEnvironmentSupplier="org.rtems.cdt.build.CygwinEnvironmentSupplier"
530            isToolChainSupported="org.eclipse.cdt.managedbuilder.gnu.cygwin.IsGnuCygwinToolChainSupported"
531            scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileWin">
532         <targetPlatform
533            id="org.rtems.cdt.target.cygwin"
534            name="RTEMS Target"
535            binaryParser="org.eclipse.cdt.core.ELF"
536            osList="all"
537            archList="all">
538         </targetPlatform>
539         <builder
540               id="org.rtems.cdt.builder.cygwin"
541               superClass="cdt.managedbuild.target.gnu.builder"/>
542         <tool
543               id="org.rtems.cdt.compiler.c.cygwin"
544               name="RTEMS C Compiler (Cygwin)"
545               superClass="org.rtems.cdt.tool.gcc"
546               commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator">
547            <inputType
548                  id="org.rtems.cdt.compiler.input.c.cygwin"
549                  dependencyCalculator="org.eclipse.cdt.managedbuilder.makegen.gnu.DefaultGCCDependencyCalculator2"
550                  dependencyContentType="org.eclipse.cdt.core.cHeader"
551                  dependencyExtensions="h"
552                  languageId="org.eclipse.cdt.core.gcc"
553                  scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileWinC"
554                  sourceContentType="org.eclipse.cdt.core.cSource"
555                  sources="c"/>
556         </tool>
557         <tool
558               id="org.rtems.cdt.compiler.cpp.cygwin"
559               name="RTEMS C++ Compiler (Cygwin)"
560               superClass="org.rtems.cdt.tool.gcc"
561               commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator">
562            <inputType
563                  id="org.rtems.cdt.compiler.cpp.input.cygwin"
564                  dependencyCalculator="org.eclipse.cdt.managedbuilder.makegen.gnu.DefaultGCCDependencyCalculator2"
565                  dependencyContentType="org.eclipse.cdt.core.cxxHeader"
566                  dependencyExtensions="h,H,hpp"
567                  languageId="org.eclipse.cdt.core.g++"
568                  scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileWinCPP"
569                  sourceContentType="org.eclipse.cdt.core.cxxSource"
570                  sources="c,C,cc,cxx,cpp"/>
571         </tool>
572         <tool
573               commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator"
574               id="org.rtems.cdt.linker.c.cygwin"
575               name="RTEMS Linker (Cygwin)"
576               superClass="cdt.managedbuild.tool.gnu.c.linker.cygwin">
577            <enablement type="ALL">
578               <not>
579                  <checkBuildProperty
580                     property="org.eclipse.cdt.build.core.buildArtefactType"
581                     value="org.eclipse.cdt.build.core.buildArtefactType.staticLib"/>
582               </not>
583            </enablement>
584         </tool>
585         <tool
586               commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator"
587               id="org.rtems.cdt.linker.cpp.cygwin"
588               name="RTEMS C++ Linker (Cygwin)"
589               superClass="cdt.managedbuild.tool.gnu.cpp.linker.cygwin">
590            <enablement type="ALL">
591               <not>
592               <checkBuildProperty
593                     property="org.eclipse.cdt.build.core.buildArtefactType"
594                     value="org.eclipse.cdt.build.core.buildArtefactType.staticLib"/>
595               </not>
596            </enablement>
597         </tool>
598         <tool
599               commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator"
600               id="org.rtems.cdt.assembler.cygwin"
601               name="RTEMS Bare Assembler (Cygwin)"
602               superClass="cdt.managedbuild.tool.gnu.assembler">
603            <inputType
604                  id="org.rtems.cdt.assembler.cygwin.input"
605                  superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
606         </tool>
607         <tool
608               id="org.rtems.cdt.assembler.gcc.cygwin"
609               name="RTEMS Assembler (Cygwin)"
610               superClass="org.rtems.cdt.tool.gcc"
611               commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator">
612            <inputType
613                  id="org.rtems.cdt.assembler.gcc.input.cygwin"
614                  dependencyCalculator="org.eclipse.cdt.managedbuilder.makegen.gnu.DefaultGCCDependencyCalculator2"
615                  dependencyContentType="org.eclipse.cdt.core.cHeader"
616                  dependencyExtensions="h"
617                  languageId="org.eclipse.cdt.core.gcc"
618                  scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileC"
619                  sourceContentType="org.eclipse.cdt.core.asmSource"
620                  sources="s,S">
621            </inputType>
622         </tool>
623         <tool
624               commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator"
625               id="org.rtems.cdt.archiver.cygwin"
626               name="RTEMS Archiver (Cygwin)"
627               superClass="cdt.managedbuild.tool.gnu.archiver">
628            <enablement type="ALL">
629               <checkBuildProperty
630                     property="org.eclipse.cdt.build.core.buildArtefactType"
631                     value="org.eclipse.cdt.build.core.buildArtefactType.staticLib"/>
632            </enablement>
633         </tool>
634      </toolChain>
635
636      <!-- Project Types -->
637
638      <!-- The ID names in the executable project are not very good, but we have to keep them for backward compatibility. -->
639      <projectType
640            buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe"
641            id="org.rtems.cdt.projectType"
642            name="RTEMS Executable">
643         <configuration
644               id="org.rtems.cdt.config"
645               name="RTEMS Executable Configuration"
646               parent="org.rtems.cdt.config.base">
647            <toolChain
648                  id="org.rtems.cdt.config.toolchain"
649                  superClass="org.rtems.cdt.toolchain">
650            </toolChain>
651         </configuration>
652         <configuration
653               id="org.rtems.cdt.config.cygwin"
654               name="RTEMS Executable Configuration"
655               parent="org.rtems.cdt.config.base">
656            <toolChain
657                  id="org.rtems.cdt.config.toolchain.cygwin"
658                  superClass="org.rtems.cdt.toolchain.cygwin">
659            </toolChain>
660         </configuration>
661      </projectType>
662      <projectType
663            buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.staticLib"
664            id="org.rtems.cdt.lib.static.project"
665            name="RTEMS Static Library">
666         <configuration
667               id="org.rtems.cdt.lib.static.config"
668               name="RTEMS Library Configuration"
669               parent="org.rtems.cdt.config.base">
670            <toolChain
671                  id="org.rtems.cdt.lib.static.config.toolchain"
672                  superClass="org.rtems.cdt.toolchain">
673            </toolChain>
674         </configuration>
675         <configuration
676               id="org.rtems.cdt.lib.static.config.cygwin"
677               name="RTEMS Library Configuration"
678               parent="org.rtems.cdt.config.base">
679            <toolChain
680                  id="org.rtems.cdt.lib.static.config.toolchain.cygwin"
681                  superClass="org.rtems.cdt.toolchain.cygwin">
682            </toolChain>
683         </configuration>
684      </projectType>
685   </extension>
686
687   <!-- New Project Wizard -->
688   <extension
689         point="org.eclipse.cdt.managedbuilder.ui.newWizardPages">
690      <wizardPage
691            ID="org.rtems.cdt.wizards.BasicSetup"
692            operationClass="org.rtems.cdt.wizards.FinishSetup"
693            pageClass="org.rtems.cdt.wizards.BasicSetup"/>
694   </extension>
695
696   <!-- Preferences -->
697   <extension
698         point="org.eclipse.ui.preferencePages">
699      <page
700            category="org.eclipse.cdt.ui.preferences.CPluginPreferencePage"
701            class="org.rtems.cdt.preferences.PreferencePage"
702            id="org.rtems.cdt.preferences.PreferencePage"
703            name="RTEMS">
704      </page>
705   </extension>
706   <extension
707         point="org.eclipse.core.runtime.preferences">
708      <initializer
709            class="org.rtems.cdt.preferences.PreferenceInitializer"/>
710   </extension>
711
712   <!-- Properties -->
713   <extension
714         point="org.eclipse.ui.propertyPages">
715      <page
716            category="org.eclipse.cdt.managedbuilder.ui.properties.Page_head_build"
717            class="org.rtems.cdt.properties.PropertyPage"
718            id="org.rtems.cdt.properties.PropertyPage"
719            name="RTEMS">
720         <filter
721               name="projectNature"
722               value="org.eclipse.cdt.managedbuilder.core.managedBuildNature"/>
723         <enabledWhen>
724            <or>
725               <instanceof value="org.eclipse.cdt.core.model.ICContainer"/>
726               <instanceof value="org.eclipse.cdt.core.model.ICProject"/>
727               <instanceof value="org.eclipse.cdt.core.model.ITranslationUnit"/>
728               <instanceof value="org.eclipse.core.resources.IFile"/>
729               <instanceof value="org.eclipse.core.resources.IFolder"/>
730               <instanceof value="org.eclipse.core.resources.IProject"/>
731            </or>
732         </enabledWhen>
733      </page>
734   </extension>
735   <extension
736         point="org.eclipse.cdt.core.templates">
737      <template
738            filterPattern=".*gcc"
739            id="org.rtems.cdt.template.hello"
740            location="$nl$/templates/hello/template.xml"
741            projectType="org.eclipse.cdt.build.core.buildArtefactType.exe">
742      </template>
743      <template
744            filterPattern=".*g\+\+"
745            id="org.rtems.cdt.template.cxx"
746            location="$nl$/templates/rtems++/template.xml"
747            projectType="org.eclipse.cdt.build.core.buildArtefactType.exe">
748      </template>
749   </extension>
750   <extension
751         point="org.eclipse.cdt.core.templateAssociations">
752      <template
753            id="org.rtems.cdt.template.hello">
754         <toolChain
755               id="org.rtems.cdt.toolchain">
756         </toolChain>
757         <toolChain
758               id="org.rtems.cdt.toolchain.cygwin">
759         </toolChain>
760      </template>
761      <template
762            id="org.rtems.cdt.template.cxx">
763         <toolChain
764               id="org.rtems.cdt.toolchain">
765         </toolChain>
766      </template>
767   </extension>
768</plugin>
Note: See TracBrowser for help on using the repository browser.